Class TopicSubscriptionManager

  • All Implemented Interfaces:
    java.lang.Runnable

    public class TopicSubscriptionManager
    extends java.lang.Object
    implements java.lang.Runnable
    Author:
    Tassilo Weidner
    • Field Detail

      • ACQUISITION_MONITOR

        protected java.util.concurrent.locks.ReentrantLock ACQUISITION_MONITOR
      • IS_WAITING

        protected java.util.concurrent.locks.Condition IS_WAITING
      • isRunning

        protected java.util.concurrent.atomic.AtomicBoolean isRunning
      • subscriptions

        protected java.util.concurrent.CopyOnWriteArrayList<TopicSubscription> subscriptions
      • taskTopicRequests

        protected java.util.List<TopicRequestDto> taskTopicRequests
      • externalTaskHandlers

        protected java.util.Map<java.lang.String,​ExternalTaskHandler> externalTaskHandlers
      • thread

        protected java.lang.Thread thread
      • isBackoffStrategyDisabled

        protected java.util.concurrent.atomic.AtomicBoolean isBackoffStrategyDisabled
      • clientLockDuration

        protected long clientLockDuration
    • Constructor Detail

      • TopicSubscriptionManager

        public TopicSubscriptionManager​(EngineClient engineClient,
                                        TypedValues typedValues,
                                        long clientLockDuration)
    • Method Detail

      • run

        public void run()
        Specified by:
        run in interface java.lang.Runnable
      • acquire

        protected void acquire()
      • prepareAcquisition

        protected void prepareAcquisition​(TopicSubscription subscription)
      • stop

        public void stop()
      • start

        public void start()
      • isRunning

        public boolean isRunning()
      • setBackoffStrategy

        public void setBackoffStrategy​(BackoffStrategy backOffStrategy)
      • runBackoffStrategy

        protected void runBackoffStrategy​(java.util.List<ExternalTask> externalTasks)
      • suspend

        protected void suspend​(long waitTime)
      • resume

        protected void resume()
      • disableBackoffStrategy

        public void disableBackoffStrategy()