Package org.eclipse.emf.cdo.util
Class CDOCrossReferenceAdapter
- java.lang.Object
-
- org.eclipse.emf.ecore.util.ECrossReferenceAdapter
-
- org.eclipse.emf.cdo.util.CDOCrossReferenceAdapter
-
- All Implemented Interfaces:
Adapter
,Adapter.Internal
public final class CDOCrossReferenceAdapter extends ECrossReferenceAdapter
AnECrossReferenceAdapter
that does instanceof checks ofNotifier
instances in the orderResource
,EObject
, andResourceSet
.Background: For performance reasons (assuming that there are typically more
EObject
instances thanResource
instances) EMF does instanceof checks ofNotifier
instances in the orderEObject
,Resource
, andResourceSet
. That is problematic with CDOResources because they implement bothResource
andEObject
.- Since:
- 4.6
- Author:
- Eike Stepper
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
CDOCrossReferenceAdapter.CDOInverseCrossReferencer
AnInverseCrossReferencer
with anCDOCrossReferenceAdapter.CDOInverseCrossReferencer.addProxy(EObject, EObject)
method that is visible toCDOCrossReferenceAdapter
.-
Nested classes/interfaces inherited from class org.eclipse.emf.ecore.util.ECrossReferenceAdapter
ECrossReferenceAdapter.InverseCrossReferencer
-
Nested classes/interfaces inherited from interface org.eclipse.emf.common.notify.Adapter
Adapter.Internal
-
-
Field Summary
-
Fields inherited from class org.eclipse.emf.ecore.util.ECrossReferenceAdapter
inverseCrossReferencer, iterating, settingTargets, unloadedEObjects, unloadedResources
-
-
Constructor Summary
Constructors Constructor Description CDOCrossReferenceAdapter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected CDOCrossReferenceAdapter.CDOInverseCrossReferencer
createInverseCrossReferencer()
protected CDOCrossReferenceAdapter.CDOInverseCrossReferencer
getInverseCrossReferencer()
protected void
selfAdapt(Notification notification)
void
setTarget(Notifier target)
void
unsetTarget(Notifier target)
-
Methods inherited from class org.eclipse.emf.ecore.util.ECrossReferenceAdapter
addAdapter, dump, getCrossReferenceAdapter, getInverseReferences, getInverseReferences, getInverseReferences, getNonNavigableInverseReferences, getNonNavigableInverseReferences, getTarget, handleContainment, handleCrossReference, isAdapterForType, isIncluded, notifyChanged, removeAdapter, resolve, resolveAll, resolveProxy, setTarget, setTarget, setTarget, unsetTarget, unsetTarget, unsetTarget, useRecursion
-
-
-
-
Method Detail
-
setTarget
public void setTarget(Notifier target)
- Specified by:
setTarget
in interfaceAdapter
- Overrides:
setTarget
in classECrossReferenceAdapter
-
unsetTarget
public void unsetTarget(Notifier target)
- Specified by:
unsetTarget
in interfaceAdapter.Internal
- Overrides:
unsetTarget
in classECrossReferenceAdapter
-
selfAdapt
protected void selfAdapt(Notification notification)
- Overrides:
selfAdapt
in classECrossReferenceAdapter
-
createInverseCrossReferencer
protected CDOCrossReferenceAdapter.CDOInverseCrossReferencer createInverseCrossReferencer()
- Overrides:
createInverseCrossReferencer
in classECrossReferenceAdapter
-
getInverseCrossReferencer
protected CDOCrossReferenceAdapter.CDOInverseCrossReferencer getInverseCrossReferencer()
-
-