Class DynamicRouterComponent
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.support.DefaultComponent
org.apache.camel.component.dynamicrouter.routing.DynamicRouterComponent
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.CamelContextAware,org.apache.camel.Component,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.HasCamelContext,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
@Component("dynamic-router")
public class DynamicRouterComponent
extends org.apache.camel.support.DefaultComponent
The Dynamic Router
Component. Manages:
Consumers: addition and removal- Control Channel: manage routing participants and their routing rules
- Endpoint: creates the
Endpointfor a Dynamic Router URI
-
Field Summary
Fields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING -
Constructor Summary
ConstructorsConstructorDescriptionCreate an instance of the Dynamic Router component with default factories.DynamicRouterComponent(Supplier<DynamicRouterEndpoint.DynamicRouterEndpointFactory> endpointFactorySupplier, Supplier<DynamicRouterProcessor.DynamicRouterProcessorFactory> processorFactorySupplier, Supplier<DynamicRouterProducer.DynamicRouterProducerFactory> producerFactorySupplier, BiFunction<org.apache.camel.CamelContext, org.apache.camel.Expression, org.apache.camel.processor.RecipientList> recipientListSupplier, Supplier<PrioritizedFilter.PrioritizedFilterFactory> filterFactorySupplier, Supplier<DynamicRouterFilterService.DynamicRouterFilterServiceFactory> filterServiceFactorySupplier) Create an instance of the Dynamic Router component with custom factories. -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.camel.EndpointCreate an endpoint for the supplied URI, and with the supplied parameters.protected voidPerform shutdown on the Dynamic Router.Get theDynamicRouterFilterServicefor the component.getRoutingProcessor(String channel) Get theDynamicRouterProcessorfor the given channel.Methods inherited from class org.apache.camel.support.DefaultComponent
afterConfiguration, createEndpoint, createEndpoint, doBuild, doInit, getAndRemoveOrResolveReferenceParameter, getAndRemoveOrResolveReferenceParameter, getAndRemoveParameter, getAndRemoveParameter, getCamelContext, getComponentPropertyConfigurer, getDefaultName, getEndpointPropertyConfigurer, getExtension, getSupportedExtensions, ifStartsWithReturnRemainder, isAutowiredEnabled, isBridgeErrorHandler, isLazyStartProducer, registerExtension, registerExtension, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceListParameter, resolveAndRemoveReferenceParameter, resolveAndRemoveReferenceParameter, resolveRawParameterValues, setAutowiredEnabled, setBridgeErrorHandler, setCamelContext, setLazyStartProducer, setProperties, setProperties, setProperties, useIntrospectionOnEndpoint, useRawUri, validateParameters, validateURIMethods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doLifecycleChange, doResume, doStart, doStop, doSuspend, fail, getInternalLock, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.camel.Service
build, close, init, start, stopMethods inherited from interface org.apache.camel.ShutdownableService
shutdownMethods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspendingMethods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
-
Constructor Details
-
DynamicRouterComponent
public DynamicRouterComponent()Create an instance of the Dynamic Router component with default factories. -
DynamicRouterComponent
public DynamicRouterComponent(Supplier<DynamicRouterEndpoint.DynamicRouterEndpointFactory> endpointFactorySupplier, Supplier<DynamicRouterProcessor.DynamicRouterProcessorFactory> processorFactorySupplier, Supplier<DynamicRouterProducer.DynamicRouterProducerFactory> producerFactorySupplier, BiFunction<org.apache.camel.CamelContext, org.apache.camel.Expression, org.apache.camel.processor.RecipientList> recipientListSupplier, Supplier<PrioritizedFilter.PrioritizedFilterFactory> filterFactorySupplier, Supplier<DynamicRouterFilterService.DynamicRouterFilterServiceFactory> filterServiceFactorySupplier) Create an instance of the Dynamic Router component with custom factories.- Parameters:
endpointFactorySupplier- creates theDynamicRouterEndpointprocessorFactorySupplier- creates theDynamicRouterProcessorproducerFactorySupplier- creates theDynamicRouterProducerrecipientListSupplier- creates theRecipientListfilterFactorySupplier- creates thePrioritizedFilterfilterServiceFactorySupplier- creates theDynamicRouterFilterService
-
-
Method Details
-
createEndpoint
protected org.apache.camel.Endpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) throws ExceptionCreate an endpoint for the supplied URI, and with the supplied parameters. The control channel URI- Specified by:
createEndpointin classorg.apache.camel.support.DefaultComponent- Parameters:
uri- endpoint URIremaining- portion of the URI after the scheme, and before parameters (the channel)parameters- URI parameters- Returns:
- an endpoint for the supplied URI
- Throws:
Exception
-
doShutdown
Perform shutdown on the Dynamic Router.- Overrides:
doShutdownin classorg.apache.camel.support.service.BaseService- Throws:
Exception- to indicate a problem with shutdown
-
getRoutingProcessor
Get theDynamicRouterProcessorfor the given channel.- Parameters:
channel- the channel to get the processor for- Returns:
- the processor for the given channel
-
getFilterService
Get theDynamicRouterFilterServicefor the component.- Returns:
- the
DynamicRouterFilterServicefor the component
-