Class DynamicRouterControlChannelProcessor
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.AsyncProcessorSupport
-
- org.apache.camel.component.dynamicrouter.DynamicRouterControlChannelProcessor
-
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.AsyncProcessor,org.apache.camel.Processor,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
public class DynamicRouterControlChannelProcessor extends org.apache.camel.support.AsyncProcessorSupportProcessesDynamicRouterControlMessages on the specialized control channel.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDynamicRouterControlChannelProcessor.DynamicRouterControlChannelProcessorFactoryCreate aDynamicRouterControlChannelProcessorinstance.
-
Constructor Summary
Constructors Constructor Description DynamicRouterControlChannelProcessor(DynamicRouterComponent component)Create the instance to processDynamicRouterControlMessages for the supplied component.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanprocess(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)When aDynamicRouterControlMessageis received, it is processed, depending on theDynamicRouterControlMessage.getMessageType(): if the type isDynamicRouterControlMessage.ControlMessageType.SUBSCRIBE, then create theFilterProcessorand add it to the consumer's filters, but if the type isDynamicRouterControlMessage.ControlMessageType.UNSUBSCRIBE, then the entry for the endpoint is removed.voidsetConfiguration(DynamicRouterConfiguration configuration)Set theDynamicRouterConfiguration.-
Methods inherited from class org.apache.camel.support.AsyncProcessorSupport
doStart, doStop, process, processAsync
-
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
-
-
-
-
Constructor Detail
-
DynamicRouterControlChannelProcessor
public DynamicRouterControlChannelProcessor(DynamicRouterComponent component)
Create the instance to processDynamicRouterControlMessages for the supplied component.- Parameters:
component- theDynamicRouterComponentthat this instance processesDynamicRouterControlMessages for
-
-
Method Detail
-
process
public boolean process(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback)When aDynamicRouterControlMessageis received, it is processed, depending on theDynamicRouterControlMessage.getMessageType(): if the type isDynamicRouterControlMessage.ControlMessageType.SUBSCRIBE, then create theFilterProcessorand add it to the consumer's filters, but if the type isDynamicRouterControlMessage.ControlMessageType.UNSUBSCRIBE, then the entry for the endpoint is removed.- Parameters:
exchange- the exchange, where the body should be aDynamicRouterControlMessagecallback- theAsyncCallback- Returns:
- true, always, because these messages are only consumed, so we do not need to continue asynchronously
-
setConfiguration
public void setConfiguration(DynamicRouterConfiguration configuration)
Set theDynamicRouterConfiguration.- Parameters:
configuration- theDynamicRouterConfiguration
-
-