Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

COSMOS ORM

I am looking into the object-relational mapping layer for COSMOS.

Requirements:

  • We would like to leverage TPTP code to parse log files into Common Base Events and collect statistical data
  • Persist data in relational database
  • Use POJO to interact with database

Technologies:

  • iBatis
  • JPA

TPTP CBE Object Models

TPTP has 3 object models for Common Base Events. Two of them in org.eclipse.tptp.platform.logging.events .

  • src-cbe101: This object model is based on EMF
  • src-events: This object model does not require EMF

Both of these two model are modeled after the Common Base Event specification. The TPTP generic log adapter (GLA) uses the EMF model. This model is known as the "producer" CBE model. The POJO CBE model is not used in TPTP. It was created for the eclispe platform project, but it was never used.

Another model is in org.eclipse.tptp.platform.models. This model is used by the GUI. It's known as the "consumer" model. It is not exactly modeled after the CBE specification. It contains more fields used by the GUI or by the application logic of the log analyzer. (I'm not sure if it's a superset of the producer model.)

TPTP has database support for CBE. The database schema is modeled after the consumer model. The loader code in the org.eclipse.tptp.platform.models plugin is responsible for doing database persistence. The GLA doesn't persist the producer CBE model into database.

Back to the top