org.eclipse.emf.spi.cdo

## Interface CDOStore

- All Superinterfaces:
    InternalEObject.EStore

      public interface CDOStore
      extends InternalEObject.EStore

  A CDO specific version of an `InternalEObject.EStore`.

  CDORevisions need to follow these rules:
  - Keep CDOID only when the object (!isNew && !isTransient) // Only when CDOID will not changed.
  - Keep EObject for external reference, new, transient and that until commit time.
  It is important since these objects could changed and we need to keep a reference to `EObject` until the end. It is the reason why `CDOStore` always call `InternalCDOView.convertObjectToID(Object, boolean)` with true.

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

- - ### Field Summary

    - ### Fields inherited from interface org.eclipse.emf.ecore.InternalEObject.EStore

      `NO_INDEX`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `convertToCDO(InternalCDOObject object, EStructuralFeature feature, java.lang.Object value)`
    `java.lang.Object` | `convertToEMF(EObject eObject, InternalCDORevision revision, EStructuralFeature feature, int index, java.lang.Object value)`
    `int` | `getContainingFeatureID(InternalEObject eObject)`
    `InternalEObject` | `getResource(InternalEObject eObject)`
    `InternalCDOView` | `getView()`
    `java.lang.Object` | `resolveProxy(InternalCDORevision revision, EStructuralFeature feature, int index, java.lang.Object value)`
    `void` | `setContainer(InternalEObject eObject, CDOResource newResource, InternalEObject newEContainer, int newContainerFeatureID)`

    - ### Methods inherited from interface org.eclipse.emf.ecore.InternalEObject.EStore

      `add, clear, contains, create, get, getContainer, getContainingFeature, hashCode, indexOf, isEmpty, isSet, lastIndexOf, move, remove, set, size, toArray, toArray, unset`

- - ### Method Detail

    - #### getView

          InternalCDOView getView()

      Since:
        2.0

    - #### setContainer

          void setContainer(InternalEObject eObject,
                            CDOResource newResource,
                            InternalEObject newEContainer,
                            int newContainerFeatureID)

      Since:
        2.0

    - #### getContainingFeatureID

          int getContainingFeatureID(InternalEObject eObject)

    - #### getResource

          InternalEObject getResource(InternalEObject eObject)

      Since:
        2.0

    - #### resolveProxy

          java.lang.Object resolveProxy(InternalCDORevision revision,
                                        EStructuralFeature feature,
                                        int index,
                                        java.lang.Object value)

      Since:
        2.0

    - #### convertToCDO

          java.lang.Object convertToCDO(InternalCDOObject object,
                                        EStructuralFeature feature,
                                        java.lang.Object value)

      Since:
        3.0

    - #### convertToEMF

          java.lang.Object convertToEMF(EObject eObject,
                                        InternalCDORevision revision,
                                        EStructuralFeature feature,
                                        int index,
                                        java.lang.Object value)

      Since:
        2.0

Copyright (c) 2014 Eike Stepper (Berlin, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html