Interface IContextDeactivationController


public interface IContextDeactivationController
Controls deactivitation/reactivation of IObjectDerivedDataContext's that being collected/already stored in the DD context store of a project. requiresDeactivation(IObjectDerivedDataContext, Object, IAsyncComputationExecutionContext) should be used to determine the status of newly registered context. IContextActivationCallback being supplied via the start(IContextActivationCallback, IAsyncComputationExecutionContext) method should be used to perform mass deactivation/reactivation of specific segment contexts
  • Method Details

    • getSupportedSegment

      String getSupportedSegment()
      Gets an async processing pipeline segment which tasks are being controlled by this controller
      Returns:
      The target segment for the control. Cannot be null
    • requiresDeactivation

      boolean requiresDeactivation(IObjectDerivedDataContext context, Object computationCause, IAsyncComputationExecutionContext executionContext)
      Gets inactivity status for a given context. Result is used during scheduling of contexts to check their inactivation
      Parameters:
      context - A context to check. Cannot be null
      computationCause - A computation cause. Can be null
      executionContext - A common execution context for all async computing checks. Cannot be null
      Returns:
    • start

      void start(IContextActivationCallback callback, IAsyncComputationExecutionContext executionContext)
      Starts deactication process controller and supplies deactivation/reactivation callback. This callback must be used by the controller to support deactivation of earlier active target contexts, or reactivation of previously deactivated contexts
      Parameters:
      callback - A deactivation/reactivation callback. Cannot be null
    • stop

      void stop(IAsyncComputationExecutionContext executionContext)
      Stops controller at the end of async computation service lifecycle
      Parameters:
      executionContext - A common execution context for all async computing checks. Cannot be null