Package org.eclipse.emf.spi.cdo
Interface InternalCDOView
- All Superinterfaces:
AutoCloseable,CDOBranchPoint,CDOBranchProvider,CDOCommitHistory.Provider<CDOObject,,CDOObjectHistory> CDOCommonView,CDOIDProvider,CDOLobLoader,CDORevisionProvider,CDOTimeProvider,CDOUpdatable,CDOView,org.eclipse.net4j.util.collection.Closeable,IAdaptable,org.eclipse.net4j.util.container.IContainer<CDOResourceNode>,org.eclipse.net4j.util.lifecycle.IDeactivateable,org.eclipse.net4j.util.concurrent.IExecutorServiceProvider,org.eclipse.net4j.util.lifecycle.ILifecycle,org.eclipse.net4j.util.event.INotifier,org.eclipse.net4j.util.options.IOptionsContainer,org.eclipse.net4j.util.properties.IPropertiesContainer
- All Known Subinterfaces:
InternalCDOTransaction
public interface InternalCDOView
extends CDOView, CDOIDProvider, CDOLobLoader, org.eclipse.net4j.util.lifecycle.ILifecycle, org.eclipse.net4j.util.concurrent.IExecutorServiceProvider
Internal contract for a repository view's object cache and invalidation lifecycle. A view uses it to resolve and
load revisions for its branch point, while session invalidations update the objects and permissions visible through
that view.
- 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 classOptimizes the storage ofCDOObject.cdoView()andCDOObject.cdoState().static final classA data structure that holds all input values ofInternalCDOView#invalidate().Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.view.CDOView
CDOView.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.common.branch.CDOBranchPoint
INVALID_DATE, UNSPECIFIED_DATEFields inherited from interface org.eclipse.emf.cdo.common.id.CDOIDProvider
NOOPFields inherited from interface org.eclipse.emf.cdo.util.CDOUpdatable
NO_TIMEOUTFields inherited from interface org.eclipse.emf.cdo.view.CDOView
PROP_LIFECYCLE_EXCEPTION_HANDLER, PROP_TIME_MACHINE_DISABLED -
Method Summary
Modifier and TypeMethodDescriptionorg.eclipse.net4j.util.concurrent.Accessaccess()Acquires this view's internal reentrant lock and returns a reusable lexical access handle.voidattachResource(CDOResourceImpl resource) voidvoidClears the resource-path cache using the same logic asclearResourcePathCacheIfNecessary(CDORevisionDelta).voidcollectViewedRevisions(Map<CDOID, InternalCDORevision> revisions) convertIDToObject(Object potentialID) convertIDToObjectUnsynced(Object potentialID) Performs the same ID-to-object conversion asconvertIDToObject(Object)without acquiring this view's internal lock.convertObjectToID(Object potentialObject) convertObjectToID(Object potentialObject, boolean onlyPersistedID) convertObjectToIDUnsynced(Object potentialObject, boolean onlyPersistedID) Performs the same conversion asconvertObjectToID(Object, boolean)without acquiring this view's internal lock.voidderegisterObject(InternalCDOObject object) Deprecated.Returns an unmodifiable map of the objects managed by this view.getResourceNodeID(String path) getRevision(CDOID id, boolean loadOnDemand) Returns thesessionthis view was opened by.getStore()getViewAndState(CDOState state) Deprecated.Returns theview setthis view is associated with.voidhandleAddAdapter(InternalCDOObject eObject, Adapter adapter) voidhandleLockNotification(InternalCDOView sender, CDOLockChangeInfo lockChangeInfo) voidhandleObjectStateChanged(InternalCDOObject object, CDOState oldState, CDOState newState) voidhandleRemoveAdapter(InternalCDOObject eObject, Adapter adapter) booleanhasSubscription(CDOID id) voidinvalidate(CDOBranch branch, long lastUpdateTime, List<CDORevisionKey> allChangedObjects, List<CDOIDAndVersion> allDetachedObjects, Map<CDOID, InternalCDORevision> oldRevisions, boolean async) Deprecated.As of 4.2.voidinvalidate(CDOBranch branch, long lastUpdateTime, List<CDORevisionKey> allChangedObjects, List<CDOIDAndVersion> allDetachedObjects, Map<CDOID, InternalCDORevision> oldRevisions, boolean async, boolean clearResourcePathCache) Deprecated.As of 4.6.voidinvalidate(InternalCDOView.ViewInvalidationData invalidationData) voidbooleanbooleanbooleanisObjectDirty(CDOID id) booleanisObjectLocked(CDOObject object, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, boolean byOthers) booleanisObjectNew(CDOID id) voidlockView()Deprecated.As of 4.29 useCDOView.sync()voidprefetchRevisions(CDOID id, int depth) voidregisterObject(InternalCDOObject object) voidregisterProxyResource(CDOResourceImpl resource) Deprecated.No longer supported.voidremapObject(CDOID oldID) voidresourceLoaded(CDOResourceImpl resource, boolean loaded) voidsetFeatureAnalyzer(CDOFeatureAnalyzer featureAnalyzer) Deprecated.voidsetLastUpdateTime(long lastUpdateTime) voidsetProvider(CDOViewProvider provider) voidsetRepositoryName(String repositoryName) voidsetSession(InternalCDOSession session) voidsetViewID(int viewId) voidsetViewSet(InternalCDOViewSet viewSet) voidvoidDeprecated.As of 4.29 useCDOView.sync()voidunsubscribe(EObject eObject, Adapter adapter) voidupdateLockStates(CDOLockState[] newLockStates, boolean loadObjectsOnDemand, Consumer<CDOLockState> consumer) Deprecated.Methods inherited from interface java.lang.AutoCloseable
closeMethods inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchPoint
getBranch, getTimeStampMethods inherited from interface org.eclipse.emf.cdo.common.commit.CDOCommitHistory.Provider
getHistory, getHistoryMethods inherited from interface org.eclipse.emf.cdo.common.CDOCommonView
getDurableLockingID, getSessionID, getViewID, isDurableView, isHistorical, isReadOnlyMethods inherited from interface org.eclipse.emf.cdo.common.id.CDOIDProvider
provideCDOIDMethods inherited from interface org.eclipse.emf.cdo.common.lob.CDOLobLoader
loadLobMethods inherited from interface org.eclipse.emf.cdo.common.revision.CDORevisionProvider
getRevisionMethods inherited from interface org.eclipse.emf.cdo.util.CDOUpdatable
getLastUpdateTime, runAfterUpdate, waitForUpdate, waitForUpdateMethods inherited from interface org.eclipse.emf.cdo.view.CDOView
addObjectHandler, addRegistrationHandler, compareRevisions, createQuery, createQuery, createResourceURI, disableDurableLocking, enableDurableLocking, enableDurableLocking, getBinaryResource, getLockStates, getLockStates, getLockStatesOfObjects, getObject, getObject, getObject, getObjectHandlers, getObjects, getProvider, getRegistrationHandlers, getResource, getResource, getResourceFolder, getResourceNode, getResourceSet, getRootResource, getTextResource, getUnitManager, getURI, getURIHandler, getViewLock, hasConflict, hasResource, isDirty, isInvalidating, isInvalidationRunnerActive, isLegacyModeEnabled, isObjectRegistered, lockObjects, lockObjects, options, queryInstances, queryInstancesAsync, queryInstancesAsync, queryResources, queryResourcesAsync, queryXRefs, queryXRefs, queryXRefsAsync, refreshLockStates, reload, removeObjectHandler, removeRegistrationHandler, setBranch, setBranch, setBranchPoint, setBranchPoint, setBranchPoint, setBranchPoint, setResourcePathCache, setTimeStamp, setTimeStamp, sync, syncExec, syncExec, unlockObjects, unlockObjects, unlockObjectsMethods 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.net4j.util.properties.IPropertiesContainer
properties
-
Method Details
-
access
org.eclipse.net4j.util.concurrent.Access access()Acquires this view's internal reentrant lock and returns a reusable lexical access handle. Close the returned handle exactly once for each successful acquisition.- Since:
- 4.31
-
setViewID
void setViewID(int viewId) -
setProvider
- Since:
- 4.4
-
getRepositoryName
String getRepositoryName()- Since:
- 4.4
-
setRepositoryName
- Since:
- 4.4
-
getSession
InternalCDOSession getSession()Description copied from interface:CDOViewReturns thesessionthis view was opened by.- Specified by:
getSessionin interfaceCDOCommonView- Specified by:
getSessionin interfaceCDOView- Returns:
- The session this view was opened by, or
nullif this view is closed. - See Also:
-
setSession
-
getViewSet
InternalCDOViewSet getViewSet()Description copied from interface:CDOViewReturns theview setthis view is associated with.- Specified by:
getViewSetin interfaceCDOView- Returns:
- The view set this view is associated with, never
null. - See Also:
-
setViewSet
-
getObjects
Map<CDOID,InternalCDOObject> getObjects()Returns an unmodifiable map of the objects managed by this view.- Since:
- 4.0
-
getObjectsList
List<InternalCDOObject> getObjectsList()- Since:
- 4.3
-
getStore
CDOStore getStore()- Since:
- 4.0
-
toTransaction
InternalCDOTransaction toTransaction() -
attachResource
-
resourceLoaded
- Since:
- 4.5
-
handleObjectStateChanged
- Since:
- 3.0
-
invalidate
- Since:
- 4.6
-
setLastUpdateTime
void setLastUpdateTime(long lastUpdateTime) - Since:
- 3.0
-
collectViewedRevisions
- Since:
- 3.0
-
remapObject
-
clearResourcePathCacheIfNecessary
- Since:
- 4.2
-
clearResourcePathCacheIfNecessaryUnsynced
Clears the resource-path cache using the same logic asclearResourcePathCacheIfNecessary(CDORevisionDelta). This method does not acquire the view lock; the caller must already hold this view's internal lock. It is intended for internal call paths that are already inside the owning view/transaction synchronization boundary. Anulldelta clears the cache unconditionally; a non-null delta clears it only if it can affect the resource tree structure.- Since:
- 4.31
- See Also:
-
getResourceNodeID
-
registerObject
-
deregisterObject
-
getRevision
-
prefetchRevisions
- Since:
- 3.0
-
convertObjectToID
-
convertObjectToID
-
convertObjectToIDUnsynced
Performs the same conversion asconvertObjectToID(Object, boolean)without acquiring this view's internal lock. The caller must already hold this view's internal lock. This method is intended for internal paths that are already inside the owning view synchronization boundary.- Since:
- 4.31
- See Also:
-
convertIDToObject
-
convertIDToObjectUnsynced
Performs the same ID-to-object conversion asconvertIDToObject(Object)without acquiring this view's internal lock. The caller must already hold this view's internal lock. This method is intended for internal paths that are already inside the owning view synchronization boundary.- Since:
- 4.31
- See Also:
-
isObjectNew
- Since:
- 4.1
-
isObjectDirty
- Since:
- 4.31
-
isObjectDetached
- Since:
- 4.31
-
handleAddAdapter
-
handleRemoveAdapter
-
subscribe
-
unsubscribe
-
hasSubscription
-
getLockOwner
CDOLockOwner getLockOwner()- Specified by:
getLockOwnerin interfaceCDOCommonView- Since:
- 4.12
-
isObjectLocked
boolean isObjectLocked(CDOObject object, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, boolean byOthers) - Since:
- 3.0
-
handleLockNotification
- Since:
- 4.1
-
getViewAndState
- Since:
- 4.2
-
getViewMonitor
Deprecated.As of 4.29 useCDOView.sync()Returns a per-view compatibility monitor. The monitor does not coordinate with CDO's internal view lock; useCDOView.sync()instead. This method is disabled by default and requires-Dorg.eclipse.emf.cdo.view.ENABLE_LEGACY_LOCKING_API=true.- Since:
- 4.5
-
lockView
Deprecated.As of 4.29 useCDOView.sync()Acquires the underlying view lock for deprecated compatibility code. This method is disabled by default and requires-Dorg.eclipse.emf.cdo.view.ENABLE_LEGACY_LOCKING_API=true. UseCDOView.sync()instead.- Since:
- 4.5
-
unlockView
Deprecated.As of 4.29 useCDOView.sync()- Since:
- 4.5
-
isClosing
boolean isClosing()- Since:
- 4.15
-
inverseClose
void inverseClose()- Since:
- 4.15
-
getFeatureAnalyzer
Deprecated. -
setFeatureAnalyzer
Deprecated. -
invalidate
@Deprecated void invalidate(CDOBranch branch, long lastUpdateTime, List<CDORevisionKey> allChangedObjects, List<CDOIDAndVersion> allDetachedObjects, Map<CDOID, InternalCDORevision> oldRevisions, boolean async) Deprecated. -
invalidate
@Deprecated void invalidate(CDOBranch branch, long lastUpdateTime, List<CDORevisionKey> allChangedObjects, List<CDOIDAndVersion> allDetachedObjects, Map<CDOID, InternalCDORevision> oldRevisions, boolean async, boolean clearResourcePathCache) Deprecated.As of 4.6. useinvalidate(ViewInvalidationData)- Since:
- 4.2
-
registerProxyResource
Deprecated.No longer supported. -
updateLockStates
@Deprecated void updateLockStates(CDOLockState[] newLockStates, boolean loadObjectsOnDemand, Consumer<CDOLockState> consumer) Deprecated.- Since:
- 4.12
-
CDOView.sync()