Interface IContextCollector


  • public interface IContextCollector
    A scope collector's purpose is to provide scope of derived data computations in case of one or another BM event.
    Note that clients should not implement this interface themselves, but rather use ScopeCollectorBuilder to build an instance of scope collector.
    See Also:
    PartBasedContextCollectorBuilder, ICaseSpecificContextCollector
    • Method Detail

      • collectContextOnFeatureChange

        default void 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.
        Parameters:
        bmObject - the BM object that has been changed
        feature - the feature of the BM object that has been changed. Can be null in case of FQN changes
        bmEvent - the event that has been fired by BM in response to the change
        contextSession - Session of the context collection being used to access object contexts.
      • collectContextOnFullRebuild

        default void collectContextOnFullRebuild​(IBmObject bmObject,
                                                 IContextCollectingSession contextSession)
        Gathers full rebuild scope. Usually it's the object itself, but in some cases it's necessary to affect other DDs of other objects.
        Parameters:
        bmObject - The object to collect full rebuild context for.
        contextSession - Session of the context collection being used to access object contexts.
      • collectContextOnObjectAssociation

        default 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.
        Parameters:
        bmObject - the BM object that has been associated
        bmEvent - the event that has been fired by BM in response to the association
        contextSession - Session of the context collection being used to access object contexts.
      • fullRebuildScope

        default String[] fullRebuildScope()
        Gets the full rebuild scope provided by this collector.
        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.
      • isResourceContextCollector

        default boolean isResourceContextCollector()
        Returns true if this is a resource context collector.
        Returns:
        true if this is a resource context collector.
      • isModelContextCollector

        default boolean isModelContextCollector()
        Returns true if this is a model context collector.
        Returns:
        true if this is a model context collector.
      • getSupportedType

        org.eclipse.emf.ecore.EClass getSupportedType()
        Gets the type of the BM object this collector supports.
        Returns:
        The type of supported BM object.