Interface AlarmPipeline


public interface AlarmPipeline
  • Method Details

    • start

      void start()
      Start this pipeline. A pipeline will always be started before any calls to evaluate(AlarmEvent, TrackingContext) happen.

      Set MDC keys before coming here.

    • stop

      void stop()
      Stop this pipeline and everything running in it immediately.

      Set MDC keys before coming here.

    • retire

      void retire(AlarmPipeline.RetiredCallback callback)
      Retire this pipeline. This differs from stopping a pipeline in that all AlarmEvents currently evaluating inside the pipeline should be allowed to finish. Upon completion of the last event, callback will be notified.

      Set MDC keys before coming here.

      Parameters:
      callback - The callback to notify once the pipeline is empty and has finished running.
    • evaluate

      void evaluate(AlarmEvent alarmEvent, TrackingContext trackingContext)
      Evaluate an alarmEvent.

      Set MDC keys before coming here.

      Parameters:
      alarmEvent - The AlarmEvent to evaluate, not null
      trackingContext - The TrackingContext for alarmEvent. Update the context on transitions and when the event is finished being evaluated, not null
    • getName

      @Nonnull String getName()
      Get the name of this pipeline. Used mainly to set MDC log keys
      Returns:
      the pipeline name, not null