Package org.eclipse.emf.cdo.server.db

## Interface IMetaDataManager

-     public interface IMetaDataManager

  Manages the `elements` of the meta model level of a CDO `repository`.
  Since:
    2.0
  Author:
    Eike Stepper
  No Implement
    This interface is not intended to be implemented by clients.
  No Extend
    This interface is not intended to be extended by clients.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `clearMetaIDMappings()` |
    `CDOID` | `getMetaID​(EModelElement modelElement, long commitTime)` | Returns the meta ID of the given `EModelElement`.
    `EModelElement` | `getMetaInstance​(CDOID id)` | Returns the `EModelElement` referred to by the given ID.
    `EPackage[]` | `loadPackageUnit​(java.sql.Connection connection, InternalCDOPackageUnit packageUnit)` | Loads a package unit from the database.
    `void` | `rawExport​(java.sql.Connection connection, CDODataOutput out, long fromCommitTime, long toCommitTime)` |
    `java.util.Collection<InternalCDOPackageUnit>` | `rawImport​(java.sql.Connection connection, CDODataInput in, long fromCommitTime, long toCommitTime, org.eclipse.net4j.util.om.monitor.OMMonitor monitor)` |
    `java.util.Collection<InternalCDOPackageUnit>` | `readPackageUnits​(java.sql.Connection connection)` | Reads information about package units present in the database.
    `void` | `writePackageUnits​(java.sql.Connection connection, InternalCDOPackageUnit[] packageUnits, org.eclipse.net4j.util.om.monitor.OMMonitor monitor)` | Write package units to the database.

- - ### Method Detail

    - #### getMetaID

          CDOID getMetaID​(EModelElement modelElement,
                          long commitTime)

      Returns the meta ID of the given `EModelElement`. `getMetaID(getMetaInstance(x))` yields `x`
      Parameters:
        `modelElement` - the element
      Returns:
        the corresponding ID
      Since:
        4.0

    - #### getMetaInstance

          EModelElement getMetaInstance​(CDOID id)

      Returns the `EModelElement` referred to by the given ID. `getMetaInstance(getMetaID(m))` yields `m`
      Since:
        4.0

    - #### loadPackageUnit

          EPackage[] loadPackageUnit​(java.sql.Connection connection,
                                     InternalCDOPackageUnit packageUnit)

      Loads a package unit from the database.
      Parameters:
        `connection` - the DB connection to read from.
        `packageUnit` - the package unit to load.
      Returns:
        the loaded package unit.
      Since:
        2.0

    - #### clearMetaIDMappings

          void clearMetaIDMappings()

      Since:
        4.0

    - #### readPackageUnits

          java.util.Collection<InternalCDOPackageUnit> readPackageUnits​(java.sql.Connection connection)

      Reads information about package units present in the database.
      Parameters:
        `connection` - the DB connection to read from.
      Returns:
        a collection of package unit information records which can be passed to `loadPackageUnit(Connection, InternalCDOPackageUnit)` in order to read the EPackage.
      Since:
        2.0

    - #### writePackageUnits

          void writePackageUnits​(java.sql.Connection connection,
                                 InternalCDOPackageUnit[] packageUnits,
                                 org.eclipse.net4j.util.om.monitor.OMMonitor monitor)

      Write package units to the database.
      Parameters:
        `connection` - the DB connection to write to.
        `packageUnits` - the package units to write.
        `monitor` - the monitor to indicate progress.
      Since:
        2.0

    - #### rawExport

          void rawExport​(java.sql.Connection connection,
                         CDODataOutput out,
                         long fromCommitTime,
                         long toCommitTime)
                  throws java.io.IOException

      Throws:
        `java.io.IOException`
      Since:
        3.0

    - #### rawImport

          java.util.Collection<InternalCDOPackageUnit> rawImport​(java.sql.Connection connection,
                                                                 CDODataInput in,
                                                                 long fromCommitTime,
                                                                 long toCommitTime,
                                                                 org.eclipse.net4j.util.om.monitor.OMMonitor monitor)
                                                          throws java.io.IOException

      Throws:
        `java.io.IOException`
      Since:
        4.0