Package org.eclipse.emf.cdo.spi.common.model

# Interface InternalCDOClassInfo

All Superinterfaces:
  `Adapter`, `CDOClassInfo`

public interface InternalCDOClassInfo extends CDOClassInfo
If the meaning of this type isn't clear, there really should be more of a description here...

Since:
  4.2
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.

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static interface`
`InternalCDOClassInfo.PersistenceFilter`
Encapsulation of a rule for filtering the persistent values of a feature in some model element.

## Nested classes/interfaces inherited from interface org.eclipse.emf.common.notify.Adapter

`Adapter.Internal`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`NO_SLOT`

## Method Summary

Modifier and Type
Method
Description
`InternalCDOClassInfo.PersistenceFilter`
`getPersistenceFilter(EStructuralFeature feature)`
Obtains a rule that filters/transforms the persist values of the given `feature`.
`int`
`getPersistentFeatureIndex(int featureID)`
Returns the index of the specified `feature` in the `CDORevisionImpl.values` array, never `NO_SLOT`.
`int`
`getPersistentFeatureIndex(EStructuralFeature feature)`
Returns the index of the specified `feature` in the `CDORevisionImpl.values` array, never `NO_SLOT`.
`InternalCDORevision`
`getRevisionForID(CDOID id)`
`int`
`getSettingsFeatureCount()`
Returns the number of `features` whose values are always stored in the `CDOObjectImpl.eSettings` array, whether an object is in `CDOState.TRANSIENT` or not.
`int`
`getSettingsFeatureIndex(int featureID)`
Returns the index of the specified `feature` in the `CDOObjectImpl.eSettings` array, or `NO_SLOT` if the feature is `non-transient` or `single-valued`.
`int`
`getTransientFeatureCount()`
Returns the number of `features` whose values are additionally stored in the `CDOObjectImpl.eSettings` array, if an object is in `CDOState.TRANSIENT`.
`int`
`getTransientFeatureIndex(int featureID)`
Returns the index of the specified `feature` in the `CDOObjectImpl.eSettings` array, or `NO_SLOT` if the feature is `transient` or `many-valued`
`int`
`getTransientFeatureIndex(EStructuralFeature feature)`

### Methods inherited from interface org.eclipse.emf.common.notify.Adapter

`getTarget, isAdapterForType, notifyChanged, setTarget`

### Methods inherited from interface org.eclipse.emf.cdo.common.model.CDOClassInfo

`getAllPersistentContainments, getAllPersistentFeatures, getAllPersistentLobAttributes, getAllPersistentMapFeatures, getAllPersistentReferences, getEClass, getFeatureIndex, getFeatureIndex, hasPersistentFeatureMaps, hasPersistentOpposite, isPersistent, isPersistent, isResource, isResourceFolder, isResourceNode`

## Field Details

### NO_SLOT

static final int NO_SLOT

See Also:
  - Constant Field Values

## Method Details

### getRevisionForID

InternalCDORevision getRevisionForID(CDOID id)

### getPersistentFeatureIndex

int getPersistentFeatureIndex(EStructuralFeature feature) throws IllegalArgumentException
Returns the index of the specified `feature` in the `CDORevisionImpl.values` array, never `NO_SLOT`.

Throws:
  `IllegalArgumentException` - if the specified feature is not `persistent`.
See Also:
  - `getPersistentFeatureIndex(int)`

### getPersistentFeatureIndex

int getPersistentFeatureIndex(int featureID) throws IllegalArgumentException
Returns the index of the specified `feature` in the `CDORevisionImpl.values` array, never `NO_SLOT`.

Throws:
  `IllegalArgumentException` - if the specified feature is not `persistent`.
See Also:
  - `getPersistentFeatureIndex(EStructuralFeature)`

### getSettingsFeatureCount

int getSettingsFeatureCount()
Returns the number of `features` whose values are always stored in the `CDOObjectImpl.eSettings` array, whether an object is in `CDOState.TRANSIENT` or not.

These are the `transient` and/or `many-valued` features.

See Also:
  - `getSettingsFeatureIndex(int)`

### getSettingsFeatureIndex

int getSettingsFeatureIndex(int featureID)
Returns the index of the specified `feature` in the `CDOObjectImpl.eSettings` array, or `NO_SLOT` if the feature is `non-transient` or `single-valued`.

See Also:
  - `getSettingsFeatureCount()`

### getTransientFeatureCount

int getTransientFeatureCount()
Returns the number of `features` whose values are additionally stored in the `CDOObjectImpl.eSettings` array, if an object is in `CDOState.TRANSIENT`.

These are the `non-transient` and/or `single-valued` features.

See Also:
  - `getTransientFeatureIndex(int)`

### getTransientFeatureIndex

int getTransientFeatureIndex(int featureID)
Returns the index of the specified `feature` in the `CDOObjectImpl.eSettings` array, or `NO_SLOT` if the feature is `transient` or `many-valued`

See Also:
  - `getTransientFeatureCount()`

### getTransientFeatureIndex

int getTransientFeatureIndex(EStructuralFeature feature)

See Also:
  - `getTransientFeatureIndex(int)`

### getPersistenceFilter

InternalCDOClassInfo.PersistenceFilter getPersistenceFilter(EStructuralFeature feature)
Obtains a rule that filters/transforms the persist values of the given `feature`.

Parameters:
  `feature` - a feature to be persisted
Returns:
  a persistence filter rule for the `feature`, or `null` if it has no filter but just follows the default persistence rules