Package org.eclipse.emf.spi.cdo
Interface InternalCDOSession
- All Superinterfaces:
AutoCloseable,CDOCommonSession,CDOLobLoader,CDORevisionUnchunker,CDOSession,CDOTransactionContainer,CDOTransactionOpener,CDOUpdatable,CDOViewContainer,CDOViewOpener,org.eclipse.net4j.util.collection.Closeable,IAdaptable,org.eclipse.net4j.util.container.IContainer<CDOView>,org.eclipse.net4j.util.lifecycle.IDeactivateable,org.eclipse.net4j.util.concurrent.IExecutorServiceProvider,org.eclipse.net4j.util.lifecycle.ILifecycle,org.eclipse.net4j.util.event.INotifier,InternalCDOPackageRegistry.PackageLoader,InternalCDOPackageRegistry.PackageProcessor,InternalCDORevisionManager.RevisionLocker,org.eclipse.net4j.util.options.IOptionsContainer,org.eclipse.net4j.util.security.IPasswordCredentialsProvider.Provider,org.eclipse.net4j.util.properties.IPropertiesContainer,org.eclipse.net4j.util.security.IUserAware
public interface InternalCDOSession
extends CDOSession, InternalCDOPackageRegistry.PackageProcessor, InternalCDOPackageRegistry.PackageLoader, InternalCDORevisionManager.RevisionLocker, CDORevisionUnchunker, CDOLobLoader, org.eclipse.net4j.util.lifecycle.ILifecycle, org.eclipse.net4j.util.concurrent.IExecutorServiceProvider
Internal contract for the client-side connection to a CDO repository. It owns the session's views and managers,
translates protocol notifications into cache, invalidation, lock, and permission updates, and supplies the services
those views and transactions share.
- 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.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classA token that is maintained during local commits of transactions.static final classA data structure that holds all input values ofInternalCDOSession#invalidate().static final classA data structure that holds all input and output values ofInternalCDOSession.getMergeData().Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.session.CDOSession
CDOSession.ExceptionHandler, CDOSession.OptionsNested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer
org.eclipse.net4j.util.container.IContainer.Modifiable<E>, org.eclipse.net4j.util.container.IContainer.Persistable<E>, org.eclipse.net4j.util.container.IContainer.Persistence<E>Nested classes/interfaces inherited from interface org.eclipse.net4j.util.lifecycle.ILifecycle
org.eclipse.net4j.util.lifecycle.ILifecycle.DeferrableActivationNested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier
org.eclipse.net4j.util.event.INotifier.INotifier2 -
Field Summary
Fields inherited from interface org.eclipse.emf.cdo.util.CDOUpdatable
NO_TIMEOUT -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyLockStateQuery(long lockModCount, CDOBranch branch, Collection<? extends CDOLockState> lockStates) Applies lock states captured by a lock-state query.voidawaitLockChange(long lockModCount) Drains and waits until the given lock change has completed.voidDeprecated.As of 4.2 not used anymore.voidcreateRevisionAvailabilityInfo(CDOBranchPoint branchPoint) Deprecated.As of 4.2 not used anymore.voidendLocalCommit(Object token) voidenqueueLockChange(long lockModCount, Runnable action) Enqueues a lock change without starting the drainer.booleanenqueueLockStateQuery(long lockModCount, Runnable action) Registers a lock-state query update at its captured session sequence boundary.Deprecated.As of 4.2 useIPasswordCredentialsProvider.Provider.getCredentialsProvider()Returns the CDObranch managerthat manages thebranchesof the repository of this session.Returns the CDOcommit info managerof this session.intReturns the effective legacy initial collection-loading chunk size.getMergeData(CDOBranchPoint target, CDOBranchPoint source, CDOBranchPoint sourceBase, boolean computeChangeSets) getMergeData(CDOBranchPoint target, CDOBranchPoint source, CDOBranchPoint targetBase, CDOBranchPoint sourceBase, boolean computeChangeSets) Returns the CDOremote session managerthat keeps track of the other remote sessions served by the repository of this local session.Returns the CDOrevision managerthat manages therevisionsof the repository of this session.getViews()Returns an array of all openviewsandtransactionsof this session.voidDeprecated.As of 4.3 no longer supported.voidhandleCommitNotification(CDOCommitInfo commitInfo) Deprecated.As of 4.2 usehandleCommitNotification(CDOCommitInfo, boolean).voidhandleCommitNotification(CDOCommitInfo commitInfo, boolean clearResourcePathCache) Deprecated.As of 4.3 usehandleCommitNotification(CommitNotificationInfo).voidvoidhandleLockNotification(long lockModCount, CDOLockChangeInfo lockChangeInfo, InternalCDOView sender, boolean async) Handles a lock notification while retaining its event-specific sequence number for subsequent client-side processing.voidhandleLockNotification(CDOLockChangeInfo lockChangeInfo, InternalCDOView sender) Deprecated.voidhandleLockNotification(CDOLockChangeInfo lockChangeInfo, InternalCDOView sender, boolean async) Deprecated.voidhandleLockOwnerRemappedNotification(long lockModCount, CDOBranch branch, CDOLockOwner oldOwner, CDOLockOwner newOwner) Handles an owner remap while retaining its event-specific sequence number.voidhandleRepositoryStateChanged(CDOCommonRepository.State oldState, CDOCommonRepository.State newState) voidhandleRepositoryTypeChanged(CDOCommonRepository.Type oldType, CDOCommonRepository.Type newType) voidhandleViewClosed(int viewID) voidinvalidate(CDOCommitInfo commitInfo, InternalCDOTransaction sender) Deprecated.As of 4.2 useinvalidate(CDOCommitInfo, InternalCDOTransaction, boolean).voidinvalidate(CDOCommitInfo commitInfo, InternalCDOTransaction sender, boolean clearResourcePathCache) Deprecated.voidinvalidate(CDOCommitInfo commitInfo, InternalCDOTransaction sender, boolean clearResourcePathCache, byte securityImpact, Map<CDOID, CDOPermission> newPermissions) Deprecated.As of 4.6 useinvalidate(InvalidationData).voidinvalidate(InternalCDOSession.InvalidationData invalidationData) voidinvalidate(InternalCDOSession.InvalidationData invalidationData, Runnable lockCacheUpdate) Schedules the given invalidation data for processing and associates an optional lock cache update with that same invalidation.booleanisSticky()voidprocessRefreshSessionResult(CDOSessionProtocol.RefreshSessionResult result, CDOBranch branch, List<InternalCDOView> branchViews, Map<CDOBranch, Map<CDOID, InternalCDORevision>> viewedRevisions) voidresetCredentials(String userID) Initiates (possibly interactive) reset of credentials for the specified user.voidresolveAllElementProxies(CDORevision revision) resolveElementProxy(CDORevision revision, EStructuralFeature feature, int accessIndex, int serverIndex) voidsequenceLockChange(long lockModCount, Runnable action, boolean wait) Processes a lock change at its server-assigned sequence position.voidsetAuthenticator(CDOAuthenticator authenticator) Deprecated.As of 4.2 usesetCredentialsProvider(IPasswordCredentialsProvider)voidsetBranchManager(InternalCDOBranchManager branchManager) voidsetCommitInfoManager(InternalCDOCommitInfoManager commitInfoManager) voidsetCommittedSinceLastRefresh(CDOID id, CDOBranchPoint branchPoint) voidsetCredentialsProvider(org.eclipse.net4j.util.security.IPasswordCredentialsProvider credentialsProvider) voidsetExceptionHandler(CDOSession.ExceptionHandler exceptionHandler) voidsetFetchRuleManager(CDOFetchRuleManager fetchRuleManager) voidsetIDGenerator(CDOIDGenerator idGenerator) voidsetLastUpdateTime(long lastUpdateTime) voidsetLoginPeek(boolean loginPeek) voidsetMainBranchLocal(boolean mainBranchLocal) voidsetOneTimeLoginToken(byte[] oneTimeLoginToken) voidsetPackageRegistry(InternalCDOPackageRegistry packageRegistry) voidsetRemoteSessionManager(InternalCDORemoteSessionManager remoteSessionManager) voidsetRepositoryInfo(CDORepositoryInfo repositoryInfo) voidsetRevisionManager(InternalCDORevisionManager revisionManager) voidsetSessionID(int sessionID) voidsetSessionProtocol(CDOSessionProtocol sessionProtocol) voidvoidsetUserInfoManager(CDOUserInfoManager userInfoManager) voidsyncExec(org.eclipse.net4j.util.RunnableWithException runnable) voidviewDetached(InternalCDOView view) Methods inherited from interface java.lang.AutoCloseable
closeMethods inherited from interface org.eclipse.emf.cdo.common.CDOCommonSession
authorizeOperations, getOpeningTime, getSessionID, getViewMethods inherited from interface org.eclipse.emf.cdo.common.lob.CDOLobLoader
loadLobMethods inherited from interface org.eclipse.emf.cdo.spi.common.revision.CDORevisionUnchunker
ensureChunksMethods inherited from interface org.eclipse.emf.cdo.session.CDOSession
changeCredentials, changeServerPassword, clientEntities, compareRevisions, getExceptionHandler, getFetchRuleManager, getIDGenerator, getRepositoryInfo, getUserInfoManager, newBlob, newBlob, newClob, newClob, options, refresh, refresh, requestEntities, waitForUpdate, waitForUpdateMethods inherited from interface org.eclipse.emf.cdo.transaction.CDOTransactionContainer
getTransaction, getTransactions, getTransactions, openTransaction, openTransaction, openTransaction, openTransaction, openTransaction, openTransactionMethods inherited from interface org.eclipse.emf.cdo.transaction.CDOTransactionOpener
openTransaction, openTransactionMethods inherited from interface org.eclipse.emf.cdo.util.CDOUpdatable
getLastUpdateTime, runAfterUpdateMethods inherited from interface org.eclipse.emf.cdo.view.CDOViewContainer
getView, getViews, openView, openView, openView, openView, openView, openView, openView, openViewMethods inherited from interface org.eclipse.emf.cdo.view.CDOViewOpener
openView, openViewMethods inherited from interface org.eclipse.net4j.util.collection.Closeable
close, isClosedMethods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapterMethods inherited from interface org.eclipse.net4j.util.container.IContainer
getElements, isEmptyMethods inherited from interface org.eclipse.net4j.util.concurrent.IExecutorServiceProvider
getExecutorServiceMethods inherited from interface org.eclipse.net4j.util.lifecycle.ILifecycle
activate, deactivate, getLifecycleState, isActiveMethods inherited from interface org.eclipse.net4j.util.event.INotifier
addListener, getListeners, hasListeners, removeListenerMethods inherited from interface org.eclipse.emf.cdo.spi.common.model.InternalCDOPackageRegistry.PackageLoader
loadPackagesMethods inherited from interface org.eclipse.emf.cdo.spi.common.model.InternalCDOPackageRegistry.PackageProcessor
processPackageMethods inherited from interface org.eclipse.emf.cdo.spi.common.revision.InternalCDORevisionManager.RevisionLocker
acquireAtomicRequestLock, releaseAtomicRequestLockMethods inherited from interface org.eclipse.net4j.util.security.IPasswordCredentialsProvider.Provider
getCredentialsProviderMethods inherited from interface org.eclipse.net4j.util.properties.IPropertiesContainer
propertiesMethods inherited from interface org.eclipse.net4j.util.security.IUserAware
getUserID
-
Method Details
-
getViews
InternalCDOView[] getViews()Description copied from interface:CDOViewContainerReturns an array of all openviewsandtransactionsof this session.- Specified by:
getViewsin interfaceCDOCommonSession- Specified by:
getViewsin interfaceCDOViewContainer- Since:
- 4.12
- See Also:
-
getSessionProtocol
CDOSessionProtocol getSessionProtocol() -
setSessionProtocol
- Since:
- 3.0
-
getLockStateCache
CDOLockStateCache getLockStateCache()- Since:
- 4.15
-
setCredentialsProvider
void setCredentialsProvider(org.eclipse.net4j.util.security.IPasswordCredentialsProvider credentialsProvider) - Since:
- 4.2
-
setOneTimeLoginToken
void setOneTimeLoginToken(byte[] oneTimeLoginToken) - Since:
- 4.27
-
getPackageRegistry
InternalCDOPackageRegistry getPackageRegistry()Description copied from interface:CDOSessionReturns the EMFpackage registrythat is used by allobjectsof allviewsof this session.This registry is managed by the
package unit managerof this session. Allpackagesthat are already persisted in the repository of this session are automatically registered with this registry. New packages can be locally registered with this registry and are committed to the repository through atransaction, if needed.- Specified by:
getPackageRegistryin interfaceCDOSession
-
setPackageRegistry
- Since:
- 4.0
-
getBranchManager
InternalCDOBranchManager getBranchManager()Description copied from interface:CDOSessionReturns the CDObranch managerthat manages thebranchesof the repository of this session.- Specified by:
getBranchManagerin interfaceCDOCommonSession- Specified by:
getBranchManagerin interfaceCDOSession- Since:
- 3.0
-
setBranchManager
- Since:
- 4.0
-
getRevisionManager
InternalCDORevisionManager getRevisionManager()Description copied from interface:CDOSessionReturns the CDOrevision managerthat manages therevisionsof the repository of this session.- Specified by:
getRevisionManagerin interfaceCDOCommonSession- Specified by:
getRevisionManagerin interfaceCDOSession- Since:
- 3.0
-
setRevisionManager
- Since:
- 4.0
-
getCommitInfoManager
InternalCDOCommitInfoManager getCommitInfoManager()Description copied from interface:CDOSessionReturns the CDOcommit info managerof this session.- Specified by:
getCommitInfoManagerin interfaceCDOCommonSession- Specified by:
getCommitInfoManagerin interfaceCDOSession- Since:
- 3.0
-
setCommitInfoManager
- Since:
- 4.0
-
setUserInfoManager
- Since:
- 4.26
-
getRemoteSessionManager
InternalCDORemoteSessionManager getRemoteSessionManager()Description copied from interface:CDOSessionReturns the CDOremote session managerthat keeps track of the other remote sessions served by the repository of this local session.- Specified by:
getRemoteSessionManagerin interfaceCDOSession- Since:
- 3.0
-
setRemoteSessionManager
- Since:
- 3.0
-
getLobStore
CDOLobStore getLobStore()- Since:
- 4.0
-
setExceptionHandler
-
setIDGenerator
- Since:
- 4.1
-
setFetchRuleManager
- Since:
- 3.0
-
setRepositoryInfo
- Since:
- 3.0
-
setSessionID
void setSessionID(int sessionID) - Since:
- 3.0
-
setUserID
-
setLastUpdateTime
void setLastUpdateTime(long lastUpdateTime) - Since:
- 3.0
-
resetCredentials
Initiates (possibly interactive) reset of credentials for the specified user. This is an optional operation of the session and only available for administrators.- Parameters:
userID- the ID of the user for which to reset credentials- Throws:
UnsupportedOperationException- if the session implementation does not permit resetting user credentials- Since:
- 4.3
- See Also:
-
viewDetached
-
sequenceLockChange
Processes a lock change at its server-assigned sequence position.- Parameters:
lockModCount- the positive server lock modification countaction- the cache and event update for this countwait- whether to wait for this count to be applied- Since:
- 4.31
-
enqueueLockChange
Enqueues a lock change without starting the drainer. This is used while a caller still holds view access.- Parameters:
lockModCount- the positive server lock modification countaction- the cache and event update for this count- Since:
- 4.31
-
awaitLockChange
void awaitLockChange(long lockModCount) Drains and waits until the given lock change has completed.- Parameters:
lockModCount- the positive server lock modification count- Since:
- 4.31
-
enqueueLockStateQuery
Registers a lock-state query update at its captured session sequence boundary.- Parameters:
lockModCount- the lock modification count captured by the queryaction- the cache update to apply at that sequence boundary- Returns:
trueif the query result was accepted, orfalseif a newer sequence was already applied- Since:
- 4.31
-
applyLockStateQuery
void applyLockStateQuery(long lockModCount, CDOBranch branch, Collection<? extends CDOLockState> lockStates) Applies lock states captured by a lock-state query.- Parameters:
lockModCount- the baseline reported by the querybranch- the branch whose cache entries are updatedlockStates- the lock states captured by the query- Since:
- 4.31
-
getEffectiveLegacyCollectionLoadingInitialChunkSize
int getEffectiveLegacyCollectionLoadingInitialChunkSize()Returns the effective legacy initial collection-loading chunk size.- Returns:
- the effective legacy initial chunk size.
- Since:
- 4.31
-
resolveElementProxy
Object resolveElementProxy(CDORevision revision, EStructuralFeature feature, int accessIndex, int serverIndex) - Since:
- 3.0
-
resolveAllElementProxies
- Since:
- 4.0
-
handleRepositoryTypeChanged
void handleRepositoryTypeChanged(CDOCommonRepository.Type oldType, CDOCommonRepository.Type newType) - Since:
- 3.0
-
handleRepositoryStateChanged
void handleRepositoryStateChanged(CDOCommonRepository.State oldState, CDOCommonRepository.State newState) - Since:
- 3.0
-
handleCommitNotification
- Since:
- 4.3
-
handleLockNotification
void handleLockNotification(long lockModCount, CDOLockChangeInfo lockChangeInfo, InternalCDOView sender, boolean async) Handles a lock notification while retaining its event-specific sequence number for subsequent client-side processing.- Since:
- 4.31
-
handleLockOwnerRemappedNotification
void handleLockOwnerRemappedNotification(long lockModCount, CDOBranch branch, CDOLockOwner oldOwner, CDOLockOwner newOwner) Handles an owner remap while retaining its event-specific sequence number.- Since:
- 4.31
-
handleViewClosed
void handleViewClosed(int viewID) - Since:
- 4.15
-
syncExec
- Throws:
Exception- Since:
- 4.22
-
startLocalCommit
Object startLocalCommit()- Since:
- 4.3
-
endLocalCommit
- Since:
- 4.3
-
invalidate
- Since:
- 4.6
-
invalidate
Schedules the given invalidation data for processing and associates an optional lock cache update with that same invalidation.- Parameters:
invalidationData- the data that describes the invalidationlockCacheUpdate- the lock cache update to run as part of processing the invalidation, ornullif no lock cache update is needed- Since:
- 4.31
-
processRefreshSessionResult
void processRefreshSessionResult(CDOSessionProtocol.RefreshSessionResult result, CDOBranch branch, List<InternalCDOView> branchViews, Map<CDOBranch, Map<CDOID, InternalCDORevision>> viewedRevisions) - Since:
- 3.0
-
isSticky
boolean isSticky()- Since:
- 4.0
-
getCommittedSinceLastRefresh
- Since:
- 4.0
-
setCommittedSinceLastRefresh
- Since:
- 4.0
-
clearCommittedSinceLastRefresh
void clearCommittedSinceLastRefresh()- Since:
- 4.0
-
setLoginPeek
void setLoginPeek(boolean loginPeek) - Since:
- 4.23
-
setMainBranchLocal
void setMainBranchLocal(boolean mainBranchLocal) - Since:
- 4.0
-
getMergeData
InternalCDOSession.MergeData getMergeData(CDOBranchPoint target, CDOBranchPoint source, CDOBranchPoint sourceBase, boolean computeChangeSets) - Since:
- 4.2
-
getMergeData
InternalCDOSession.MergeData getMergeData(CDOBranchPoint target, CDOBranchPoint source, CDOBranchPoint targetBase, CDOBranchPoint sourceBase, boolean computeChangeSets) - Since:
- 4.6
-
updatePermissions
Map<CDORevision,CDOPermission> updatePermissions()- Since:
- 4.22
-
getAuthenticator
Deprecated.As of 4.2 useIPasswordCredentialsProvider.Provider.getCredentialsProvider()- Since:
- 4.0
-
setAuthenticator
Deprecated.As of 4.2 usesetCredentialsProvider(IPasswordCredentialsProvider)- Since:
- 4.0
-
handleBranchNotification
Deprecated.As of 4.3 no longer supported.- Since:
- 3.0
-
handleCommitNotification
Deprecated.As of 4.2 usehandleCommitNotification(CDOCommitInfo, boolean).- Since:
- 3.0
-
handleCommitNotification
Deprecated.As of 4.3 usehandleCommitNotification(CommitNotificationInfo).- Since:
- 4.2
-
handleLockNotification
Deprecated.- Since:
- 4.1
-
handleLockNotification
@Deprecated void handleLockNotification(CDOLockChangeInfo lockChangeInfo, InternalCDOView sender, boolean async) Deprecated.- Since:
- 4.12
-
invalidate
Deprecated.As of 4.2 useinvalidate(CDOCommitInfo, InternalCDOTransaction, boolean).- Since:
- 3.0
-
invalidate
@Deprecated void invalidate(CDOCommitInfo commitInfo, InternalCDOTransaction sender, boolean clearResourcePathCache) Deprecated.- Since:
- 4.2
-
invalidate
@Deprecated void invalidate(CDOCommitInfo commitInfo, InternalCDOTransaction sender, boolean clearResourcePathCache, byte securityImpact, Map<CDOID, CDOPermission> newPermissions) Deprecated.As of 4.6 useinvalidate(InvalidationData).- Since:
- 4.3
-
createRevisionAvailabilityInfo
Deprecated.As of 4.2 not used anymore.- Since:
- 4.0
-
cacheRevisions
Deprecated.As of 4.2 not used anymore.- Since:
- 4.0
-