org.eclipse.emf.cdo.spi.server

## Interface InternalRepository

- All Superinterfaces:
    CDOCommonRepository, CDORevisionUnchunker, CDOTimeProvider, IAdaptable, IContainer<java.lang.Object>, IDeactivateable, ILifecycle, INotifier, InternalCDOBranchManager.BranchLoader, InternalCDOBranchManager.BranchLoader2, InternalCDOBranchManager.BranchLoader3, InternalCDOCommitInfoManager.CommitInfoLoader, InternalCDOPackageRegistry.PackageLoader, InternalCDOPackageRegistry.PackageProcessor, InternalCDORevisionManager.RevisionLoader, InternalCDORevisionManager.RevisionLoader2, IQueryHandlerProvider, IRepository
  All Known Subinterfaces:
    InternalFailoverParticipant, InternalSynchronizableRepository

      public interface InternalRepository
      extends IRepository, InternalCDOPackageRegistry.PackageProcessor, InternalCDOPackageRegistry.PackageLoader, InternalCDOBranchManager.BranchLoader3, InternalCDORevisionManager.RevisionLoader2, InternalCDOCommitInfoManager.CommitInfoLoader, CDORevisionUnchunker

  If the meaning of this type isn't clear, there really should be more of a description here...
  Since:
    3.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.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `InternalRepository.PackagesInitializedEvent`

    - ### Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.server.IRepository

      `IRepository.Handler, IRepository.Props, IRepository.ReadAccessHandler, IRepository.WriteAccessHandler`

    - ### Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.common.CDOCommonRepository

      `CDOCommonRepository.CommitInfoStorage, CDOCommonRepository.IDGenerationLocation, CDOCommonRepository.ListOrdering, CDOCommonRepository.State, CDOCommonRepository.StateChangedEvent, CDOCommonRepository.Type, CDOCommonRepository.TypeChangedEvent`

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer

      `IContainer.Modifiable<E>, IContainer.Persistable<E>, IContainer.Persistence<E>`

    - ### Nested classes/interfaces inherited from interface org.eclipse.net4j.util.lifecycle.ILifecycle

      `ILifecycle.DeferrableActivation`

    - ### Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader

      `InternalCDOBranchManager.BranchLoader.BranchInfo, InternalCDOBranchManager.BranchLoader.SubBranchInfo`

  - ### Field Summary

    - ### Fields inherited from interface org.eclipse.emf.cdo.server.IRepository

      `SYSTEM_USER_ID`

    - ### Fields inherited from interface org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader

      `NEW_BRANCH, NEW_LOCAL_BRANCH`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `commit(InternalCommitContext commitContext, OMMonitor monitor)`
    `InternalCommitContext` | `createCommitContext(InternalTransaction transaction)`
    `long[]` | `createCommitTimeStamp(OMMonitor monitor)` Returns a commit time stamp that is guaranteed to be unique in this repository.
    `void` | `endCommit(long timeStamp)` Notifies the repository of the completion of a commit.
    `IStoreAccessor` | `ensureChunk(InternalCDORevision revision, EStructuralFeature feature, int chunkStart, int chunkEnd)`
    `void` | `ensureChunks(InternalCDORevision revision)`
    `void` | `executeOutsideStartCommit(java.lang.Runnable runnable)`
    `void` | `failCommit(long timeStamp)` Notifies the repository of the failure of a commit.
    `long[]` | `forceCommitTimeStamp(long timestamp, OMMonitor monitor)` Like `createCommitTimeStamp(OMMonitor)`, but forces the repository to use the timestamp value passed in as the argument.
    `InternalCDOBranchManager` | `getBranchManager()`
    `CDOChangeSetData` | `getChangeSet(CDOBranchPoint startPoint, CDOBranchPoint endPoint)`
    `InternalCDOCommitInfoManager` | `getCommitInfoManager()`
    `InternalCommitManager` | `getCommitManager()`
    `IManagedContainer` | `getContainer()`
    `InternalLockManager` | `getLockingManager()`
    `InternalLockManager` | `getLockManager()` Deprecated. As of 4.1 use `getLockingManager()`.
    `java.util.Set<CDOID>` | `getMergeData(CDORevisionAvailabilityInfo targetInfo, CDORevisionAvailabilityInfo sourceInfo, CDORevisionAvailabilityInfo targetBaseInfo, CDORevisionAvailabilityInfo sourceBaseInfo, OMMonitor monitor)` Deprecated. as of 4.6 use `getMergeData2(CDORevisionAvailabilityInfo, CDORevisionAvailabilityInfo, CDORevisionAvailabilityInfo, CDORevisionAvailabilityInfo, OMMonitor)`.
    `CDOSessionProtocol.MergeDataResult` | `getMergeData2(CDORevisionAvailabilityInfo targetInfo, CDORevisionAvailabilityInfo sourceInfo, CDORevisionAvailabilityInfo targetBaseInfo, CDORevisionAvailabilityInfo sourceBaseInfo, OMMonitor monitor)`
    `long` | `getOptimisticLockingTimeout()`
    `InternalCDOPackageRegistry` | `getPackageRegistry()` Same as calling `getPackageRegistry(true)`.
    `InternalCDOPackageRegistry` | `getPackageRegistry(boolean considerCommitContext)`
    `java.util.concurrent.Semaphore` | `getPackageRegistryCommitLock()`
    `InternalQueryManager` | `getQueryManager()`
    `InternalCDORevisionManager` | `getRevisionManager()`
    `InternalSessionManager` | `getSessionManager()`
    `InternalStore` | `getStore()`
    `CDOTimeProvider` | `getTimeProvider()`
    `InternalUnitManager` | `getUnitManager()`
    `void` | `handleLobs(long fromTime, long toTime, CDOLobHandler handler)`
    `void` | `handleRevisions(EClass eClass, CDOBranch branch, boolean exactBranch, long timeStamp, boolean exactTime, CDORevisionHandler handler)`
    `void` | `initMainBranch(InternalCDOBranchManager branchManager, long timeStamp)`
    `void` | `initSystemPackages()` Deprecated. As of 4.3 use `initSystemPackages()`.
    `void` | `initSystemPackages(boolean firstStart)`
    `boolean` | `isSkipInitialization()`
    `void` | `loadLob(byte[] id, java.io.OutputStream out)`
    `CDOSessionProtocol.LockObjectsResult` | `lock(InternalView view, IRWLockManager.LockType type, java.util.List<CDORevisionKey> keys, boolean recursive, long timeout)`
    `void` | `notifyReadAccessHandlers(InternalSession session, CDORevision[] revisions, java.util.List<CDORevision> additionalRevisions)`
    `void` | `notifyWriteAccessHandlers(ITransaction transaction, IStoreAccessor.CommitContext commitContext, boolean beforeCommit, OMMonitor monitor)`
    `void` | `queryLobs(java.util.List<byte[]> ids)`
    `void` | `replicate(CDOReplicationContext context)`
    `CDOReplicationInfo` | `replicateRaw(CDODataOutput out, int lastReplicatedBranchID, long lastReplicatedCommitTime)`
    `void` | `sendCommitNotification(CDOProtocol.CommitNotificationInfo info)`
    `void` | `sendCommitNotification(InternalSession sender, CDOCommitInfo commitInfo)` Deprecated. As of 4.2 use `sendCommitNotification(InternalSession, CDOCommitInfo, boolean)`.
    `void` | `sendCommitNotification(InternalSession sender, CDOCommitInfo commitInfo, boolean clearResourcePathCache)` Deprecated. As of 4.3 use `#sendCommitNotification(ISessionProtocol.CommitNotificationInfo)`.
    `void` | `setBranchManager(InternalCDOBranchManager branchManager)`
    `void` | `setCommitConflictResolver(ICommitConflictResolver commitConflictResolver)`
    `void` | `setContainer(IManagedContainer container)`
    `void` | `setLastCommitTimeStamp(long commitTimeStamp)`
    `void` | `setName(java.lang.String name)`
    `void` | `setOptimisticLockingTimeout(long optimisticLockingTimeout)`
    `void` | `setProperties(java.util.Map<java.lang.String,java.lang.String> properties)`
    `void` | `setQueryHandlerProvider(IQueryHandlerProvider queryHandlerProvider)`
    `void` | `setRevisionManager(InternalCDORevisionManager revisionManager)`
    `void` | `setRootResourceID(CDOID rootResourceID)`
    `void` | `setSessionManager(InternalSessionManager sessionManager)`
    `void` | `setSkipInitialization(boolean skipInitialization)`
    `void` | `setState(CDOCommonRepository.State state)`
    `void` | `setStore(InternalStore store)`
    `void` | `setTimeProvider(CDOTimeProvider timeProvider)`
    `void` | `setType(CDOCommonRepository.Type type)`
    `void` | `setUnitManager(InternalUnitManager unitManager)`
    `CDOSessionProtocol.UnlockObjectsResult` | `unlock(InternalView view, IRWLockManager.LockType type, java.util.List<CDOID> ids, boolean recursive)`

    - ### Methods inherited from interface org.eclipse.emf.cdo.server.IRepository

      `addCommitInfoHandler, addHandler, getCommitConflictResolver, getCommitInfoHandlers, getHandlers, getLastCommitTimeStamp, getProperties, getQueryHandlerProvider, removeCommitInfoHandler, removeHandler, setInitialPackages, validateTimeStamp, waitForCommit`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.CDOCommonRepository

      `getCommitInfoStorage, getCreationTime, getIDGenerationLocation, getName, getObjectIDTypes, getRootResourceID, getState, getStoreType, getType, getUUID, isAuthenticating, isEnsuringReferentialIntegrity, isSerializingCommits, isSupportingAudits, isSupportingBranches, isSupportingEcore, isSupportingUnits, waitWhileInitial`

    - ### Methods inherited from interface org.eclipse.emf.cdo.common.util.CDOTimeProvider

      `getTimeStamp`

    - ### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

      `getAdapter`

    - ### Methods inherited from interface org.eclipse.emf.cdo.server.IQueryHandlerProvider

      `getQueryHandler`

    - ### Methods inherited from interface org.eclipse.net4j.util.container.IContainer

      `getElements, isEmpty`

    - ### Methods inherited from interface org.eclipse.net4j.util.lifecycle.ILifecycle

      `activate, deactivate, getLifecycleState, isActive`

    - ### Methods inherited from interface org.eclipse.net4j.util.event.INotifier

      `addListener, getListeners, hasListeners, removeListener`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.model.InternalCDOPackageRegistry.PackageProcessor

      `processPackage`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.model.InternalCDOPackageRegistry.PackageLoader

      `loadPackages`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader3

      `renameBranch`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader2

      `deleteBranch, renameBranch`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.branch.InternalCDOBranchManager.BranchLoader

      `createBranch, loadBranch, loadBranches, loadSubBranches`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.revision.InternalCDORevisionManager.RevisionLoader2

      `loadObjectLifetime`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.revision.InternalCDORevisionManager.RevisionLoader

      `loadRevisionByVersion, loadRevisions`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.commit.InternalCDOCommitInfoManager.CommitInfoLoader

      `loadCommitData, loadCommitInfos`

    - ### Methods inherited from interface org.eclipse.emf.cdo.spi.common.revision.CDORevisionUnchunker

      `ensureChunks`

- - ### Method Detail

    - #### setName

          void setName(java.lang.String name)

    - #### setType

          void setType(CDOCommonRepository.Type type)

    - #### setState

          void setState(CDOCommonRepository.State state)

    - #### getStore

          InternalStore getStore()

      Specified by:
        `getStore` in interface `IRepository`

    - #### setStore

          void setStore(InternalStore store)

    - #### setProperties

          void setProperties(java.util.Map<java.lang.String,java.lang.String> properties)

    - #### getBranchManager

          InternalCDOBranchManager getBranchManager()

      Specified by:
        `getBranchManager` in interface `IRepository`

    - #### setBranchManager

          void setBranchManager(InternalCDOBranchManager branchManager)

    - #### getTimeProvider

          CDOTimeProvider getTimeProvider()

      Since:
        4.6

    - #### setTimeProvider

          void setTimeProvider(CDOTimeProvider timeProvider)

      Since:
        4.6

    - #### getPackageRegistryCommitLock

          java.util.concurrent.Semaphore getPackageRegistryCommitLock()

      Since:
        4.1

    - #### getPackageRegistry

          InternalCDOPackageRegistry getPackageRegistry()

      Same as calling `getPackageRegistry(true)`.
      Specified by:
        `getPackageRegistry` in interface `IRepository`

    - #### getPackageRegistry

          InternalCDOPackageRegistry getPackageRegistry(boolean considerCommitContext)

    - #### getRevisionManager

          InternalCDORevisionManager getRevisionManager()

      Specified by:
        `getRevisionManager` in interface `IRepository`

    - #### setRevisionManager

          void setRevisionManager(InternalCDORevisionManager revisionManager)

    - #### getCommitInfoManager

          InternalCDOCommitInfoManager getCommitInfoManager()

      Specified by:
        `getCommitInfoManager` in interface `IRepository`

    - #### setCommitConflictResolver

          void setCommitConflictResolver(ICommitConflictResolver commitConflictResolver)

      Since:
        4.8

    - #### getSessionManager

          InternalSessionManager getSessionManager()

      Specified by:
        `getSessionManager` in interface `IRepository`

    - #### setSessionManager

          void setSessionManager(InternalSessionManager sessionManager)

    - #### getLockManager

          @Deprecated
          InternalLockManager getLockManager()

      Deprecated. As of 4.1 use `getLockingManager()`.
      Specified by:
        `getLockManager` in interface `IRepository`

    - #### getLockingManager

          InternalLockManager getLockingManager()

      Specified by:
        `getLockingManager` in interface `IRepository`
      Since:
        4.1

    - #### getUnitManager

          InternalUnitManager getUnitManager()

      Specified by:
        `getUnitManager` in interface `IRepository`
      Since:
        4.5

    - #### setUnitManager

          void setUnitManager(InternalUnitManager unitManager)

      Since:
        4.5

    - #### getQueryManager

          InternalQueryManager getQueryManager()

    - #### setQueryHandlerProvider

          void setQueryHandlerProvider(IQueryHandlerProvider queryHandlerProvider)

    - #### getContainer

          IManagedContainer getContainer()

      Since:
        4.3

    - #### setContainer

          void setContainer(IManagedContainer container)

      Since:
        4.3

    - #### getCommitManager

          InternalCommitManager getCommitManager()

    - #### createCommitContext

          InternalCommitContext createCommitContext(InternalTransaction transaction)

    - #### createCommitTimeStamp

          long[] createCommitTimeStamp(OMMonitor monitor)

      Returns a commit time stamp that is guaranteed to be unique in this repository. At index 1 of the returned `long` array is the previous commit time.
      Since:
        4.0

    - #### forceCommitTimeStamp

          long[] forceCommitTimeStamp(long timestamp,
                                      OMMonitor monitor)

      Like `createCommitTimeStamp(OMMonitor)`, but forces the repository to use the timestamp value passed in as the argument. This should be called only to force the timestamp of the first commit of a new repository to be equal to its creation time.
      Since:
        4.0

    - #### endCommit

          void endCommit(long timeStamp)

      Notifies the repository of the completion of a commit. The value passed in must be a value obtained earlier through `createCommitTimeStamp(OMMonitor)`
      Since:
        4.0

    - #### failCommit

          void failCommit(long timeStamp)

      Notifies the repository of the failure of a commit. The value passed in must be a value obtained earlier through `createCommitTimeStamp(OMMonitor)`
      Since:
        4.0

    - #### executeOutsideStartCommit

          void executeOutsideStartCommit(java.lang.Runnable runnable)

      Since:
        4.5

    - #### commit

          void commit(InternalCommitContext commitContext,
                      OMMonitor monitor)

      Since:
        4.2

    - #### sendCommitNotification

          @Deprecated
          void sendCommitNotification(InternalSession sender,
                                                   CDOCommitInfo commitInfo)

      Deprecated. As of 4.2 use `sendCommitNotification(InternalSession, CDOCommitInfo, boolean)`.
      Since:
        4.0

    - #### sendCommitNotification

          @Deprecated
          void sendCommitNotification(InternalSession sender,
                                                   CDOCommitInfo commitInfo,
                                                   boolean clearResourcePathCache)

      Deprecated. As of 4.3 use `#sendCommitNotification(ISessionProtocol.CommitNotificationInfo)`.
      Since:
        4.2

    - #### sendCommitNotification

          void sendCommitNotification(CDOProtocol.CommitNotificationInfo info)

      Since:
        4.3

    - #### setRootResourceID

          void setRootResourceID(CDOID rootResourceID)

    - #### setLastCommitTimeStamp

          void setLastCommitTimeStamp(long commitTimeStamp)

      Since:
        4.0

    - #### ensureChunks

          void ensureChunks(InternalCDORevision revision)

      Since:
        4.1

    - #### ensureChunk

          IStoreAccessor ensureChunk(InternalCDORevision revision,
                                     EStructuralFeature feature,
                                     int chunkStart,
                                     int chunkEnd)

    - #### notifyReadAccessHandlers

          void notifyReadAccessHandlers(InternalSession session,
                                        CDORevision[] revisions,
                                        java.util.List<CDORevision> additionalRevisions)

    - #### notifyWriteAccessHandlers

          void notifyWriteAccessHandlers(ITransaction transaction,
                                         IStoreAccessor.CommitContext commitContext,
                                         boolean beforeCommit,
                                         OMMonitor monitor)

    - #### replicate

          void replicate(CDOReplicationContext context)

    - #### replicateRaw

          CDOReplicationInfo replicateRaw(CDODataOutput out,
                                          int lastReplicatedBranchID,
                                          long lastReplicatedCommitTime)
                                   throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### getChangeSet

          CDOChangeSetData getChangeSet(CDOBranchPoint startPoint,
                                        CDOBranchPoint endPoint)

    - #### getMergeData

          @Deprecated
          java.util.Set<CDOID> getMergeData(CDORevisionAvailabilityInfo targetInfo,
                                                         CDORevisionAvailabilityInfo sourceInfo,
                                                         CDORevisionAvailabilityInfo targetBaseInfo,
                                                         CDORevisionAvailabilityInfo sourceBaseInfo,
                                                         OMMonitor monitor)

      Deprecated. as of 4.6 use `getMergeData2(CDORevisionAvailabilityInfo, CDORevisionAvailabilityInfo, CDORevisionAvailabilityInfo, CDORevisionAvailabilityInfo, OMMonitor)`.
      Since:
        4.0

    - #### getMergeData2

          CDOSessionProtocol.MergeDataResult getMergeData2(CDORevisionAvailabilityInfo targetInfo,
                                                           CDORevisionAvailabilityInfo sourceInfo,
                                                           CDORevisionAvailabilityInfo targetBaseInfo,
                                                           CDORevisionAvailabilityInfo sourceBaseInfo,
                                                           OMMonitor monitor)

      Since:
        4.6

    - #### queryLobs

          void queryLobs(java.util.List<byte[]> ids)

      Since:
        4.0

    - #### handleLobs

          void handleLobs(long fromTime,
                          long toTime,
                          CDOLobHandler handler)
                   throws java.io.IOException

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

    - #### loadLob

          void loadLob(byte[] id,
                       java.io.OutputStream out)
                throws java.io.IOException

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

    - #### handleRevisions

          void handleRevisions(EClass eClass,
                               CDOBranch branch,
                               boolean exactBranch,
                               long timeStamp,
                               boolean exactTime,
                               CDORevisionHandler handler)

      Specified by:
        `handleRevisions` in interface `InternalCDORevisionManager.RevisionLoader`
      Since:
        4.0

    - #### isSkipInitialization

          boolean isSkipInitialization()

      Since:
        4.0

    - #### setSkipInitialization

          void setSkipInitialization(boolean skipInitialization)

      Since:
        4.0

    - #### initSystemPackages

          @Deprecated
          void initSystemPackages()

      Deprecated. As of 4.3 use `initSystemPackages()`.
      Since:
        4.0

    - #### initSystemPackages

          void initSystemPackages(boolean firstStart)

      Since:
        4.3

    - #### initMainBranch

          void initMainBranch(InternalCDOBranchManager branchManager,
                              long timeStamp)

      Since:
        4.0

    - #### lock

          CDOSessionProtocol.LockObjectsResult lock(InternalView view,
                                                    IRWLockManager.LockType type,
                                                    java.util.List<CDORevisionKey> keys,
                                                    boolean recursive,
                                                    long timeout)

      Since:
        4.1

    - #### unlock

          CDOSessionProtocol.UnlockObjectsResult unlock(InternalView view,
                                                        IRWLockManager.LockType type,
                                                        java.util.List<CDOID> ids,
                                                        boolean recursive)

      Since:
        4.1

    - #### getOptimisticLockingTimeout

          long getOptimisticLockingTimeout()

      Since:
        4.2

    - #### setOptimisticLockingTimeout

          void setOptimisticLockingTimeout(long optimisticLockingTimeout)

      Since:
        4.3

Copyright (c) 2004-2019 Eike Stepper (Loehne, 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