Class ContextCollector
java.lang.Object
com._1c.g5.v8.internal.derived.context.ContextCollector
- All Implemented Interfaces:
IContextCollector
Standard implementation of
IContextCollector
interface.
Relies on part-based contexts.-
Constructor Summary
ConstructorsConstructorDescriptionContextCollector
(org.eclipse.emf.ecore.EClass supportedType, ICaseSpecificContextCollector onObjectAssociationContextCollector, ICaseSpecificContextCollector onFullRebuildContextCollector, Map<org.eclipse.emf.ecore.EStructuralFeature, ICaseSpecificContextCollector> onFeatureChangeContextCollectors, ICaseSpecificContextCollector onBinaryAttachmentContextCollector) Constructs a new instance, performs basic initialization. -
Method Summary
Modifier and TypeMethodDescriptionvoid
collectContextOnFeatureChange
(IBmObject bmObject, org.eclipse.emf.ecore.EStructuralFeature feature, BmSubEvent bmEvent, IContextCollectingSession contextSession) Provides the scope of computations in case of the BM object change.
Note that, if the type of the BM object is not supported, an exception will be thrown.void
collectContextOnFullRebuild
(IBmObject bmObject, IContextCollectingSession contextSession) Gathers full rebuild scope.void
collectContextOnObjectAssociation
(IBmObject bmObject, BmSubEvent bmEvent, IContextCollectingSession contextSession) Provides the scope of computations in case of the BM object change.
Note that, if the type of the BM object is not supported, an exception will be thrown.String[]
Gets the full rebuild scope provided by this collector.org.eclipse.emf.ecore.EClass
Gets the type of the BM object this collector supports.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com._1c.g5.v8.derived.context.IContextCollector
collectContextOnFullRebuild, isModelContextCollector, isResourceContextCollector
-
Constructor Details
-
ContextCollector
public ContextCollector(org.eclipse.emf.ecore.EClass supportedType, ICaseSpecificContextCollector onObjectAssociationContextCollector, ICaseSpecificContextCollector onFullRebuildContextCollector, Map<org.eclipse.emf.ecore.EStructuralFeature, ICaseSpecificContextCollector> onFeatureChangeContextCollectors, ICaseSpecificContextCollector onBinaryAttachmentContextCollector) Constructs a new instance, performs basic initialization.- Parameters:
supportedType
- the supported BM object typeonObjectAssociationContextCollector
- the scope collector to use to define the scope of computations on object associationonFullRebuildContextCollector
- the scope collector to use during the full rebuild scope collecting operationsonFeatureChangeContextCollectors
- a map, where keys are the features change of which provokes derived data computation and values are the collectors used to defined the scope of computationsonBinaryAttachmentContextCollector
- the scope collector to use during the binary attachment change operations
-
-
Method Details
-
collectContextOnFeatureChange
public void collectContextOnFeatureChange(IBmObject bmObject, org.eclipse.emf.ecore.EStructuralFeature feature, BmSubEvent bmEvent, IContextCollectingSession contextSession) Description copied from interface:IContextCollector
Provides the scope of computations in case of the BM object change.
Note that, if the type of the BM object is not supported, an exception will be thrown.- Specified by:
collectContextOnFeatureChange
in interfaceIContextCollector
- Parameters:
bmObject
- the BM object that has been changedfeature
- the feature of the BM object that has been changed. Can benull
in case of FQN changesbmEvent
- the event that has been fired by BM in response to the changecontextSession
- Session of the context collection being used to access object contexts.
-
collectContextOnFullRebuild
public void collectContextOnFullRebuild(IBmObject bmObject, IContextCollectingSession contextSession) Description copied from interface:IContextCollector
Gathers full rebuild scope. Usually it's the object itself, but in some cases it's necessary to affect other DDs of other objects.- Specified by:
collectContextOnFullRebuild
in interfaceIContextCollector
- Parameters:
bmObject
- The object to collect full rebuild context for.contextSession
- Session of the context collection being used to access object contexts.
-
collectContextOnObjectAssociation
public void collectContextOnObjectAssociation(IBmObject bmObject, BmSubEvent bmEvent, IContextCollectingSession contextSession) Description copied from interface:IContextCollector
Provides the scope of computations in case of the BM object change.
Note that, if the type of the BM object is not supported, an exception will be thrown.- Specified by:
collectContextOnObjectAssociation
in interfaceIContextCollector
- Parameters:
bmObject
- the BM object that has been associatedbmEvent
- the event that has been fired by BM in response to the associationcontextSession
- Session of the context collection being used to access object contexts.
-
fullRebuildScope
Description copied from interface:IContextCollector
Gets the full rebuild scope provided by this collector.- Specified by:
fullRebuildScope
in interfaceIContextCollector
- Returns:
- Array of DD segments that participate in the full rebuild procedure using this collector.
Can be empty or
null
in case if this collector isn't participating in the rebuild.
-
getSupportedType
public org.eclipse.emf.ecore.EClass getSupportedType()Description copied from interface:IContextCollector
Gets the type of the BM object this collector supports.- Specified by:
getSupportedType
in interfaceIContextCollector
- Returns:
- The type of supported BM object.
-