Class RocketMQReplyManagerSupport

  • All Implemented Interfaces:
    ReplyManager, java.lang.AutoCloseable, org.apache.camel.Service, org.apache.camel.ShutdownableService, org.apache.camel.StatefulService, org.apache.camel.SuspendableService

    public class RocketMQReplyManagerSupport
    extends org.apache.camel.support.service.ServiceSupport
    implements ReplyManager
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected org.apache.camel.CamelContext camelContext  
      protected RocketMQEndpoint endpoint  
      protected java.util.concurrent.ScheduledExecutorService executorService  
      protected org.slf4j.Logger log  
      protected org.apache.rocketmq.client.consumer.DefaultMQPushConsumer mqPushConsumer  
      protected java.util.concurrent.CountDownLatch replyToLatch  
      protected long replyToTimeout  
      protected java.lang.String replyToTopic  
      protected ReplyTimeoutMap timeoutMap  
      • Fields inherited from class org.apache.camel.support.service.BaseService

        BUILDED, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTINGDOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void cancelMessageKey​(java.lang.String messageKey)  
      protected org.apache.rocketmq.client.consumer.DefaultMQPushConsumer createConsumer()  
      protected ReplyHandler createReplyHandler​(ReplyManager replyManager, org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback, java.lang.String messageKey, long requestTimeout)  
      protected void doStart()  
      protected void doStop()  
      java.lang.String getReplyToTopic()  
      protected void handleReplyMessage​(java.lang.String messageKey, org.apache.rocketmq.common.message.MessageExt messageExt)  
      void onMessage​(org.apache.rocketmq.common.message.MessageExt messageExt)  
      void processReply​(ReplyHolder holder)  
      java.lang.String registerReply​(ReplyManager replyManager, org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback, java.lang.String messageKey, long requestTimeout)  
      void setEndpoint​(RocketMQEndpoint endpoint)  
      void setReplyToTopic​(java.lang.String replyToTopic)  
      void setScheduledExecutorService​(java.util.concurrent.ScheduledExecutorService executorService)  
      void updateMessageKey​(java.lang.String messageKey, java.lang.String newMessageKey, long requestTimeout)  
      • Methods inherited from class org.apache.camel.support.service.BaseService

        build, doBuild, doFail, doInit, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.apache.camel.Service

        build, close, init, start, stop
      • Methods inherited from interface org.apache.camel.ShutdownableService

        shutdown
      • Methods inherited from interface org.apache.camel.StatefulService

        getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspending
      • Methods inherited from interface org.apache.camel.SuspendableService

        isSuspended, resume, suspend
    • Field Detail

      • log

        protected final org.slf4j.Logger log
      • camelContext

        protected final org.apache.camel.CamelContext camelContext
      • replyToLatch

        protected final java.util.concurrent.CountDownLatch replyToLatch
      • executorService

        protected java.util.concurrent.ScheduledExecutorService executorService
      • replyToTopic

        protected java.lang.String replyToTopic
      • mqPushConsumer

        protected org.apache.rocketmq.client.consumer.DefaultMQPushConsumer mqPushConsumer
    • Constructor Detail

      • RocketMQReplyManagerSupport

        public RocketMQReplyManagerSupport​(org.apache.camel.CamelContext camelContext)
    • Method Detail

      • doStart

        protected void doStart()
                        throws java.lang.Exception
        Overrides:
        doStart in class org.apache.camel.support.service.BaseService
        Throws:
        java.lang.Exception
      • createConsumer

        protected org.apache.rocketmq.client.consumer.DefaultMQPushConsumer createConsumer()
                                                                                    throws org.apache.rocketmq.client.exception.MQClientException
        Throws:
        org.apache.rocketmq.client.exception.MQClientException
      • onMessage

        public void onMessage​(org.apache.rocketmq.common.message.MessageExt messageExt)
      • doStop

        protected void doStop()
                       throws java.lang.Exception
        Overrides:
        doStop in class org.apache.camel.support.service.BaseService
        Throws:
        java.lang.Exception
      • setReplyToTopic

        public void setReplyToTopic​(java.lang.String replyToTopic)
        Specified by:
        setReplyToTopic in interface ReplyManager
      • registerReply

        public java.lang.String registerReply​(ReplyManager replyManager,
                                              org.apache.camel.Exchange exchange,
                                              org.apache.camel.AsyncCallback callback,
                                              java.lang.String messageKey,
                                              long requestTimeout)
        Specified by:
        registerReply in interface ReplyManager
      • setScheduledExecutorService

        public void setScheduledExecutorService​(java.util.concurrent.ScheduledExecutorService executorService)
        Specified by:
        setScheduledExecutorService in interface ReplyManager
      • updateMessageKey

        public void updateMessageKey​(java.lang.String messageKey,
                                     java.lang.String newMessageKey,
                                     long requestTimeout)
        Specified by:
        updateMessageKey in interface ReplyManager
      • cancelMessageKey

        public void cancelMessageKey​(java.lang.String messageKey)
        Specified by:
        cancelMessageKey in interface ReplyManager
      • createReplyHandler

        protected ReplyHandler createReplyHandler​(ReplyManager replyManager,
                                                  org.apache.camel.Exchange exchange,
                                                  org.apache.camel.AsyncCallback callback,
                                                  java.lang.String messageKey,
                                                  long requestTimeout)
      • handleReplyMessage

        protected void handleReplyMessage​(java.lang.String messageKey,
                                          org.apache.rocketmq.common.message.MessageExt messageExt)