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

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(Connection connection, InternalCDOPackageUnit packageUnit)`
Loads a package unit from the database.
`void`
`rawExport(Connection connection, CDODataOutput out, long fromCommitTime, long toCommitTime)`
`Collection<InternalCDOPackageUnit>`
`rawImport(Connection connection, CDODataInput in, long fromCommitTime, long toCommitTime, org.eclipse.net4j.util.om.monitor.OMMonitor monitor)`
`Collection<InternalCDOPackageUnit>`
`readPackageUnits(Connection connection)`
Reads information about package units present in the database.
`void`
`writePackageUnits(Connection connection, InternalCDOPackageUnit[] packageUnits, org.eclipse.net4j.util.om.monitor.OMMonitor monitor)`
Write package units to the database.

## Method Details

### 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(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

Collection<InternalCDOPackageUnit> readPackageUnits(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(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(Connection connection, CDODataOutput out, long fromCommitTime, long toCommitTime) throws IOException

Throws:
  `IOException`
Since:
  3.0

### rawImport

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

Throws:
  `IOException`
Since:
  4.0