public class DefaultCamelContext extends ServiceSupport implements ModelCamelContext, Suspendable
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending
Constructor and Description |
---|
DefaultCamelContext()
Creates the
CamelContext using JndiRegistry as registry,
but will silently fallback and use SimpleRegistry if JNDI cannot be used. |
DefaultCamelContext(Context jndiContext)
Creates the
CamelContext using the given JNDI context as the registry |
DefaultCamelContext(Registry registry)
Creates the
CamelContext using the given registry |
Modifier and Type | Method and Description |
---|---|
<T extends CamelContext> |
adapt(Class<T> type)
Adapts this
CamelContext to the specialized type. |
void |
addComponent(String componentName,
Component component)
Adds a component to the context.
|
Endpoint |
addEndpoint(String uri,
Endpoint endpoint)
Adds the endpoint to the
EndpointRegistry using the given URI. |
protected Endpoint |
addEndpointToRegistry(String uri,
Endpoint endpoint)
Strategy to add the given endpoint to the internal endpoint registry
|
void |
addInterceptStrategy(InterceptStrategy interceptStrategy)
Adds the given interceptor strategy
|
void |
addLifecycleStrategy(LifecycleStrategy lifecycleStrategy)
Adds the given lifecycle strategy to be used.
|
void |
addRegisterEndpointCallback(EndpointStrategy strategy)
Registers a
callback to allow you to do custom
logic when an Endpoint is about to be registered to the EndpointRegistry . |
void |
addRestConfiguration(RestConfiguration restConfiguration)
Sets a custom
RestConfiguration |
void |
addRestDefinitions(Collection<RestDefinition> restDefinitions)
Adds a collection of rest definitions to the context
|
void |
addRouteDefinition(RouteDefinition routeDefinition)
Add a route definition to the context
Important: Each route in the same
CamelContext must have an unique route id. |
void |
addRouteDefinitions(Collection<RouteDefinition> routeDefinitions)
Adds a collection of route definitions to the context
Important: Each route in the same
CamelContext must have an unique route id. |
void |
addRoutePolicyFactory(RoutePolicyFactory routePolicyFactory)
Adds the given route policy factory
|
void |
addRoutes(RoutesBuilder builder)
Adds a collection of routes to this context using the given builder
to build them.
|
void |
addService(Object object)
Adds a service to this context, which allows this context to control the lifecycle, ensuring
the service is stopped when the context stops.
|
void |
addService(Object object,
boolean stopOnShutdown)
Adds a service to this context.
|
void |
addStartupListener(StartupListener listener)
Adds the given listener to be invoked when
CamelContext have just been started. |
protected Endpoint |
convertBeanToEndpoint(String uri,
Object bean)
Strategy method for attempting to convert the bean from a
Registry to an endpoint using
some kind of transformation or wrapper |
protected ComponentResolver |
createComponentResolver()
Lazily create a default implementation
|
ConsumerTemplate |
createConsumerTemplate()
Creates a new
ConsumerTemplate which is started and therefore ready to use right away. |
ConsumerTemplate |
createConsumerTemplate(int maximumCacheSize)
Creates a new
ConsumerTemplate which is started and therefore ready to use right away. |
protected Endpoint |
createEndpoint(String uri)
A pluggable strategy to allow an endpoint to be created without requiring
a component to be its factory, such as for looking up the URI inside some
Registry |
protected Injector |
createInjector()
Lazily create a default implementation
|
protected ManagementMBeanAssembler |
createManagementMBeanAssembler()
Lazily create a default implementation
|
protected ManagementStrategy |
createManagementStrategy() |
protected ModelJAXBContextFactory |
createModelJAXBContextFactory() |
ProducerTemplate |
createProducerTemplate()
Creates a new
ProducerTemplate which is started and therefore ready to use right away. |
ProducerTemplate |
createProducerTemplate(int maximumCacheSize)
Creates a new
ProducerTemplate which is started and therefore ready to use right away. |
protected Registry |
createRegistry()
Lazily create a default implementation
|
String |
createRouteStaticEndpointJson(String routeId)
Creates a JSON representation of all the static and dynamic configured endpoints defined in the given route(s).
|
String |
createRouteStaticEndpointJson(String routeId,
boolean includeDynamic)
Creates a JSON representation of all the static (and possible dynamic) configured endpoints defined in the given route(s).
|
protected TypeConverter |
createTypeConverter()
Lazily create a default implementation
|
void |
deferStartService(Object object,
boolean stopOnShutdown)
Defers starting the service until
CamelContext is started and has initialized all its prior services and routes. |
void |
disableJMX()
Disables using JMX as
ManagementStrategy . |
protected void |
doResume()
Implementations override this method to support customized suspend/resume.
|
protected void |
doStart()
Implementations override this method to support customized start/stop.
|
protected void |
doStartOrResumeRoutes(Map<String,RouteService> routeServices,
boolean checkClash,
boolean startConsumer,
boolean resumeConsumer,
boolean addingRoutes)
Starts or resumes the routes
|
protected void |
doStop()
Implementations override this method to support customized start/stop.
|
protected void |
doSuspend()
Implementations override this method to support customized suspend/resume.
|
String |
explainComponentJson(String componentName,
boolean includeAllOptions)
Returns a JSON schema representation of the component parameters (not endpoint parameters) for the given component by its id.
|
String |
explainDataFormatJson(String dataFormatName,
DataFormat dataFormat,
boolean includeAllOptions)
Returns a JSON schema representation of the component parameters (not endpoint parameters) for the given component by its id.
|
String |
explainEipJson(String nameOrId,
boolean includeAllOptions)
Returns a JSON schema representation of the EIP parameters for the given EIP by its id.
|
String |
explainEndpointJson(String uri,
boolean includeAllOptions)
Returns a JSON schema representation of the endpoint parameters for the given endpoint uri.
|
Map<String,Properties> |
findComponents()
Find information about all the Camel components available in the classpath and
Registry . |
Map<String,Properties> |
findEips()
Find information about all the EIPs from camel-core.
|
protected void |
forceLazyInitialization()
Force some lazy initialization to occur upfront before we start any
components and create routes
|
protected void |
forceStopLazyInitialization()
Force clear lazy initialization so they can be re-created on restart
|
ClassLoader |
getApplicationContextClassLoader()
Gets the the application context class loader which may be helpful for running camel in other containers
|
AsyncProcessorAwaitManager |
getAsyncProcessorAwaitManager()
Gets the
AsyncProcessor await manager. |
ClassResolver |
getClassResolver()
Returns the class resolver to be used for loading/lookup of classes.
|
Component |
getComponent(String name)
Gets a component from the context by name.
|
Component |
getComponent(String name,
boolean autoCreateComponents)
Gets a component from the context by name.
|
<T extends Component> |
getComponent(String name,
Class<T> componentType)
Gets a component from the context by name and specifying the expected type of component.
|
String |
getComponentDocumentation(String componentName)
Returns the HTML documentation for the given Camel component
|
List<String> |
getComponentNames()
Gets a readonly list of names of the components currently registered
|
String |
getComponentParameterJsonSchema(String componentName)
Returns the JSON schema representation of the component and endpoint parameters for the given component name.
|
ComponentResolver |
getComponentResolver() |
String |
getDataFormatParameterJsonSchema(String dataFormatName)
Returns the JSON schema representation of the
DataFormat parameters for the given data format name. |
DataFormatResolver |
getDataFormatResolver()
Gets the current data format resolver
|
Map<String,DataFormatDefinition> |
getDataFormats()
Gets the data formats that can be referenced in the routes.
|
Debugger |
getDebugger()
Gets the current
Debugger |
InterceptStrategy |
getDefaultBacklogDebugger()
Gets the default backlog debugger
|
InterceptStrategy |
getDefaultBacklogTracer()
Gets the default backlog tracer
|
FactoryFinder |
getDefaultFactoryFinder()
Gets the default FactoryFinder which will be used for the loading the factory class from META-INF
|
InterceptStrategy |
getDefaultTracer()
Gets the default tracer
|
Long |
getDelayer()
Gets the delay value
|
String |
getEipParameterJsonSchema(String eipName)
Returns the JSON schema representation of the EIP parameters for the given EIP name.
|
Endpoint |
getEndpoint(String uri)
Resolves the given name to an
Endpoint of the specified type. |
<T extends Endpoint> |
getEndpoint(String name,
Class<T> endpointType)
Resolves the given name to an
Endpoint of the specified type. |
protected org.apache.camel.impl.EndpointKey |
getEndpointKey(String uri)
Gets the endpoint key to use for lookup or whe adding endpoints to the
DefaultEndpointRegistry |
protected org.apache.camel.impl.EndpointKey |
getEndpointKey(String uri,
Endpoint endpoint)
Gets the endpoint key to use for lookup or whe adding endpoints to the
DefaultEndpointRegistry |
Map<String,Endpoint> |
getEndpointMap()
Returns a new
Map containing all of the endpoints from the EndpointRegistry |
EndpointRegistry |
getEndpointRegistry()
Gets the
EndpointRegistry |
Collection<Endpoint> |
getEndpoints()
Returns a new
Collection of all of the endpoints from the EndpointRegistry |
ErrorHandlerBuilder |
getErrorHandlerBuilder()
Gets the default error handler builder which is inherited by the routes
|
ScheduledExecutorService |
getErrorHandlerExecutorService()
Gets the default shared thread pool for error handlers which
leverages this for asynchronous redelivery tasks.
|
ExecutorServiceManager |
getExecutorServiceManager()
Gets the current
ExecutorServiceManager |
ExecutorServiceStrategy |
getExecutorServiceStrategy()
Deprecated.
|
FactoryFinder |
getFactoryFinder(String path)
Gets the FactoryFinder which will be used for the loading the factory class from META-INF in the given path
|
InflightRepository |
getInflightRepository()
Gets the inflight repository
|
Injector |
getInjector()
Returns the injector used to instantiate objects by type
|
List<InterceptStrategy> |
getInterceptStrategies()
Gets the interceptor strategies
|
List<String> |
getLanguageNames()
Gets a readonly list with the names of the languages currently registered.
|
String |
getLanguageParameterJsonSchema(String languageName)
Returns the JSON schema representation of the
Language parameters for the given language name. |
LanguageResolver |
getLanguageResolver() |
List<LifecycleStrategy> |
getLifecycleStrategies()
Returns the lifecycle strategies used to handle lifecycle notifications
|
ManagedCamelContextMBean |
getManagedCamelContext()
Gets the managed Camel context client api
|
<T extends ManagedProcessorMBean> |
getManagedProcessor(String id,
Class<T> type)
Gets the managed processor client api from any of the routes which with the given id
|
<T extends ManagedRouteMBean> |
getManagedRoute(String routeId,
Class<T> type)
Gets the managed route client api with the given route id
|
ManagementMBeanAssembler |
getManagementMBeanAssembler()
Returns the management mbean assembler
|
String |
getManagementName()
Gets the name this
CamelContext was registered in JMX. |
ManagementNameStrategy |
getManagementNameStrategy()
Gets the current management name strategy
|
ManagementStrategy |
getManagementStrategy()
Gets the management strategy
|
MessageHistoryFactory |
getMessageHistoryFactory()
Gets the current
MessageHistoryFactory |
ModelJAXBContextFactory |
getModelJAXBContextFactory()
Returns the JAXB Context factory used to create Models.
|
String |
getName()
Gets the name (id) of the this context.
|
CamelContextNameStrategy |
getNameStrategy()
Gets the current name strategy
|
NodeIdFactory |
getNodeIdFactory()
Gets the node id factory
|
PackageScanClassResolver |
getPackageScanClassResolver()
Returns the package scanning class resolver
|
ServicePool<Endpoint,PollingConsumer> |
getPollingConsumerServicePool()
Gets the service pool for
Producer pooling. |
Processor |
getProcessor(String id)
Gets the processor from any of the routes which with the given id
|
<T extends Processor> |
getProcessor(String id,
Class<T> type)
Gets the processor from any of the routes which with the given id
|
ProcessorDefinition |
getProcessorDefinition(String id)
Gets the processor definition from any of the routes which with the given id
|
<T extends ProcessorDefinition> |
getProcessorDefinition(String id,
Class<T> type)
Gets the processor definition from any of the routes which with the given id
|
ProcessorFactory |
getProcessorFactory()
Gets the current
ProcessorFactory |
ServicePool<Endpoint,Producer> |
getProducerServicePool()
Gets the service pool for
Producer pooling. |
Map<String,String> |
getProperties()
Gets the properties that can be referenced in the camel context
|
protected PropertiesComponent |
getPropertiesComponent()
Gets the properties component in use.
|
String |
getProperty(String name)
Gets the property value that can be referenced in the camel context
|
String |
getPropertyPrefixToken()
Returns the configured property placeholder prefix token if and only if the context has
property placeholder abilities, otherwise returns
null . |
String |
getPropertySuffixToken()
Returns the configured property placeholder suffix token if and only if the context has
property placeholder abilities, otherwise returns
null . |
Registry |
getRegistry()
Returns the registry used to lookup components by name and type such as the Spring ApplicationContext,
JNDI or the OSGi Service Registry
|
<T> T |
getRegistry(Class<T> type)
Returns the registry used to lookup components by name and as the given type
|
RestConfiguration |
getRestConfiguration()
Gets the default REST configuration
|
RestConfiguration |
getRestConfiguration(String component,
boolean defaultIfNotExist)
Gets the REST configuration for the given component
|
Collection<RestConfiguration> |
getRestConfigurations()
Gets all the RestConfiguration's
|
List<RestDefinition> |
getRestDefinitions()
Returns a list of the current REST definitions
|
RestRegistry |
getRestRegistry()
Gets the
RestRegistry to use |
Route |
getRoute(String id)
Gets the route with the given id
|
RouteDefinition |
getRouteDefinition(String id)
Gets the route definition with the given id
|
List<RouteDefinition> |
getRouteDefinitions()
Returns a list of the current route definitions
|
List<RoutePolicyFactory> |
getRoutePolicyFactories()
Gets the route policy factories
|
List<Route> |
getRoutes()
Returns the current routes in this context
|
protected Map<String,RouteService> |
getRouteServices() |
List<RouteStartupOrder> |
getRouteStartupOrder()
Returns the order in which the route inputs was started.
|
ServiceStatus |
getRouteStatus(String key)
Returns the current status of the given route
|
RuntimeEndpointRegistry |
getRuntimeEndpointRegistry()
Gets the
RuntimeEndpointRegistry to use, or null if none is in use. |
ShutdownRoute |
getShutdownRoute()
Gets the option to use when shutting down the route.
|
ShutdownRunningTask |
getShutdownRunningTask()
Gets the ShutdownRunningTask option in use when shutting down a route.
|
ShutdownStrategy |
getShutdownStrategy()
Gets the current shutdown strategy
|
StreamCachingStrategy |
getStreamCachingStrategy()
Gets the
StreamCachingStrategy to use. |
TypeConverter |
getTypeConverter()
Returns the type converter used to coerce types from one type to another
|
TypeConverterRegistry |
getTypeConverterRegistry()
Returns the type converter registry where type converters can be added or looked up
|
UnitOfWorkFactory |
getUnitOfWorkFactory()
Gets the
UnitOfWorkFactory to use. |
String |
getUptime()
Gets the uptime in a human readable format
|
long |
getUptimeMillis()
Gets the uptime in milli seconds
|
UuidGenerator |
getUuidGenerator()
Gets the current
UuidGenerator |
Component |
hasComponent(String componentName)
Is the given component already registered?
|
Endpoint |
hasEndpoint(String uri)
Is the given endpoint already registered in the
EndpointRegistry |
<T> T |
hasService(Class<T> type)
Has the given service type already been added to this context?
|
boolean |
hasService(Object object)
Has the given service already been added to this context?
|
Boolean |
isAllowUseOriginalMessage()
Sets whether to allow access to the original message from Camel's error handler,
or from
UnitOfWork.getOriginalInMessage() . |
boolean |
isAutoCreateComponents() |
Boolean |
isAutoStartup()
Gets whether the object should automatically start when Camel starts.
|
Boolean |
isHandleFault()
Returns whether fault handling enabled
|
Boolean |
isLazyLoadTypeConverters()
Deprecated.
|
Boolean |
isMessageHistory()
Returns whether message history is enabled
|
boolean |
isSetupRoutes()
Indicates whether current thread is setting up route(s) as part of starting Camel from spring/blueprint.
|
boolean |
isStartingRoutes()
Indicates whether current thread is starting route(s).
|
Boolean |
isStreamCaching()
Returns whether stream cache is enabled
|
Boolean |
isTracing()
Returns whether tracing enabled
|
Boolean |
isTypeConverterStatisticsEnabled()
Whether or not type converter statistics is enabled.
|
Boolean |
isUseBreadcrumb()
Whether or not breadcrumb is enabled.
|
Boolean |
isUseMDCLogging()
Whether or not MDC logging is being enabled.
|
RestsDefinition |
loadRestsDefinition(InputStream is)
Loads a collection of rest definitions from the given
InputStream . |
RoutesDefinition |
loadRoutesDefinition(InputStream is)
Loads a collection of route definitions from the given
InputStream . |
protected void |
logRouteState(Route route,
String state) |
protected Component |
lookupPropertiesComponent()
|
protected static String |
normalizeEndpointUri(String uri)
Normalize uri so we can do endpoint hits with minor mistakes and parameters is not in the same order.
|
Component |
removeComponent(String componentName)
Removes a previously added component.
|
void |
removeEndpoint(Endpoint endpoint)
Removes the endpoint from the
EndpointRegistry . |
Collection<Endpoint> |
removeEndpoints(String uri)
Removes all endpoints with the given URI from the
EndpointRegistry . |
boolean |
removeRoute(String routeId)
Removes the given route (the route must be stopped before it can be removed).
|
void |
removeRouteDefinition(RouteDefinition routeDefinition)
Removes a route definition from the context - stopping any previously running
routes if any of them are actively running
|
protected boolean |
removeRouteDefinition(String key)
Removes the route definition with the given key.
|
void |
removeRouteDefinitions(Collection<RouteDefinition> routeDefinitions)
Removes a collection of route definitions from the context - stopping any previously running
routes if any of them are actively running
|
boolean |
removeService(Object object)
Removes a service from this context.
|
String |
resolveComponentDefaultName(String javaType)
Resolves a component's default name from its java type.
|
DataFormat |
resolveDataFormat(String name)
Resolve a data format given its name
|
DataFormatDefinition |
resolveDataFormatDefinition(String name)
Resolve a data format definition given its name
|
Language |
resolveLanguage(String language)
Resolves a language for creating expressions
|
String |
resolvePropertyPlaceholders(String text)
Parses the given text and resolve any property placeholders - using {{key}}.
|
void |
resumeRoute(String routeId)
Resumes the given route if it has been previously suspended
If the route does not support suspension the route will be started instead
|
protected void |
resumeRouteService(RouteService routeService)
Resumes the given route service
|
protected boolean |
routeSupportsSuspension(String routeId) |
protected void |
safelyStartRouteServices(boolean forceAutoStart,
boolean checkClash,
boolean startConsumer,
boolean resumeConsumer,
boolean addingRoutes,
RouteService... routeServices) |
protected void |
safelyStartRouteServices(boolean checkClash,
boolean startConsumer,
boolean resumeConsumer,
boolean addingRoutes,
Collection<RouteService> routeServices)
Starts the routes services in a proper manner which ensures the routes will be started in correct order,
check for clash and that the routes will also be shutdown in correct order as well.
|
void |
setAllowUseOriginalMessage(Boolean allowUseOriginalMessage)
Sets whether to allow access to the original message from Camel's error handler,
or from
UnitOfWork.getOriginalInMessage() . |
void |
setApplicationContextClassLoader(ClassLoader classLoader)
Sets the application context class loader
|
void |
setAsyncProcessorAwaitManager(AsyncProcessorAwaitManager asyncProcessorAwaitManager)
Sets a custom
AsyncProcessor await manager. |
void |
setAutoCreateComponents(boolean autoCreateComponents) |
void |
setAutoStartup(Boolean autoStartup)
Sets whether the object should automatically start when Camel starts.
|
void |
setClassResolver(ClassResolver classResolver)
Sets the class resolver to be use
|
void |
setComponentResolver(ComponentResolver componentResolver) |
static void |
setContextCounter(int value)
Reset context counter to a preset value.
|
void |
setDataFormatResolver(DataFormatResolver dataFormatResolver)
Sets a custom data format resolver
|
void |
setDataFormats(Map<String,DataFormatDefinition> dataFormats)
Sets the data formats that can be referenced in the routes.
|
void |
setDebugger(Debugger debugger)
Sets a custom
Debugger |
void |
setDefaultBacklogDebugger(InterceptStrategy defaultBacklogDebugger)
Sets a custom backlog debugger to be used as the default backlog debugger.
|
void |
setDefaultBacklogTracer(InterceptStrategy backlogTracer)
Sets a custom backlog tracer to be used as the default backlog tracer.
|
void |
setDefaultTracer(InterceptStrategy tracer)
Sets a custom tracer to be used as the default tracer.
|
void |
setDelayer(Long delay)
Sets a delay value in millis that a message is delayed at every step it takes in the route path,
slowing the process down to better observe what is occurring
Is disabled by default
|
void |
setErrorHandlerBuilder(ErrorHandlerFactory errorHandlerBuilder)
Sets the default error handler builder which is inherited by the routes
|
void |
setExecutorServiceManager(ExecutorServiceManager executorServiceManager)
Sets a custom
ExecutorServiceManager |
void |
setFactoryFinderResolver(FactoryFinderResolver resolver)
Sets the factory finder resolver to use.
|
void |
setHandleFault(Boolean handleFault)
Sets whether fault handling is enabled or not (default is disabled).
|
void |
setInflightRepository(InflightRepository repository)
Sets a custom inflight repository to use
|
void |
setInjector(Injector injector) |
void |
setInterceptStrategies(List<InterceptStrategy> interceptStrategies) |
void |
setJndiContext(Context jndiContext)
Sets the registry to the given JNDI context
|
void |
setLanguageResolver(LanguageResolver languageResolver) |
void |
setLazyLoadTypeConverters(Boolean lazyLoadTypeConverters)
Deprecated.
|
void |
setLifecycleStrategies(List<LifecycleStrategy> lifecycleStrategies) |
void |
setManagementMBeanAssembler(ManagementMBeanAssembler managementMBeanAssembler) |
void |
setManagementName(String managementName) |
void |
setManagementNameStrategy(ManagementNameStrategy managementNameStrategy)
Sets a custom management name strategy
|
void |
setManagementStrategy(ManagementStrategy managementStrategy)
Sets the management strategy to use
|
void |
setMessageHistory(Boolean messageHistory)
Sets whether message history is enabled or not (default is enabled).
|
void |
setMessageHistoryFactory(MessageHistoryFactory messageHistoryFactory)
Sets a custom
MessageHistoryFactory |
void |
setModelJAXBContextFactory(ModelJAXBContextFactory modelJAXBContextFactory)
Sets a custom JAXB Context factory to be used
|
void |
setName(String name)
Sets the name of the this context.
|
void |
setNameStrategy(CamelContextNameStrategy nameStrategy)
Sets a custom name strategy
|
void |
setNodeIdFactory(NodeIdFactory idFactory)
Uses a custom node id factory when generating auto assigned ids to the nodes in the route definitions
|
void |
setPackageScanClassResolver(PackageScanClassResolver packageScanClassResolver)
Sets the package scanning class resolver to use
|
void |
setPollingConsumerServicePool(ServicePool<Endpoint,PollingConsumer> pollingConsumerServicePool)
Sets a pluggable service pool to use for
PollingConsumer pooling. |
void |
setProcessorFactory(ProcessorFactory processorFactory)
Sets a custom
ProcessorFactory |
void |
setProducerServicePool(ServicePool<Endpoint,Producer> producerServicePool)
Sets a pluggable service pool to use for
Producer pooling. |
void |
setProperties(Map<String,String> properties)
Sets the properties that can be referenced in the camel context
|
void |
setRegistry(Registry registry) |
void |
setRestConfiguration(RestConfiguration restConfiguration)
Sets a custom
RestConfiguration |
void |
setRestRegistry(RestRegistry restRegistry)
Sets a custom
RestRegistry to use. |
void |
setRoutePolicyFactories(List<RoutePolicyFactory> routePolicyFactories) |
void |
setRoutes(List<Route> routes)
Deprecated.
|
void |
setRuntimeEndpointRegistry(RuntimeEndpointRegistry runtimeEndpointRegistry)
Sets a custom
RuntimeEndpointRegistry to use. |
void |
setShutdownRoute(ShutdownRoute shutdownRoute)
Sets the ShutdownRoute option for routes.
|
void |
setShutdownRunningTask(ShutdownRunningTask shutdownRunningTask)
Sets the ShutdownRunningTask option to use when shutting down a route.
|
void |
setShutdownStrategy(ShutdownStrategy shutdownStrategy)
Sets a custom shutdown strategy
|
void |
setStreamCaching(Boolean cache)
Sets whether stream caching is enabled or not (default is disabled).
|
void |
setStreamCachingStrategy(StreamCachingStrategy streamCachingStrategy)
Sets a custom
StreamCachingStrategy to use. |
void |
setTracing(Boolean tracing)
Sets whether tracing is enabled or not (default is disabled).
|
void |
setTypeConverter(TypeConverter typeConverter) |
void |
setTypeConverterRegistry(TypeConverterRegistry typeConverterRegistry) |
void |
setTypeConverterStatisticsEnabled(Boolean typeConverterStatisticsEnabled)
Sets whether or not type converter statistics is enabled.
|
void |
setUnitOfWorkFactory(UnitOfWorkFactory unitOfWorkFactory)
Sets a custom
UnitOfWorkFactory to use. |
void |
setupRoutes(boolean done)
Method to signal to
CamelContext that the process to initialize setup routes is in progress. |
void |
setUseBreadcrumb(Boolean useBreadcrumb)
Set whether breadcrumb is enabled.
|
void |
setUseMDCLogging(Boolean useMDCLogging)
Set whether MDC is enabled.
|
void |
setUuidGenerator(UuidGenerator uuidGenerator)
Sets a custom
UuidGenerator (should only be set once) |
protected boolean |
shouldStartRoutes()
Should we start newly added routes?
|
void |
shutdownRoute(String routeId)
Shutdown and removes the given route using
ShutdownStrategy . |
void |
shutdownRoute(String routeId,
long timeout,
TimeUnit timeUnit)
Shutdown and removes the given route using
ShutdownStrategy with a specified timeout. |
protected void |
shutdownRouteService(RouteService routeService) |
void |
start()
Starts the service
|
void |
startAllRoutes()
Starts all the routes which currently is not started.
|
void |
startRoute(RouteDefinition route)
Starts the given route if it has been previously stopped
|
void |
startRoute(String routeId)
Starts the given route if it has been previously stopped
|
protected void |
startRouteDefinitions(Collection<RouteDefinition> list) |
protected void |
startRouteService(RouteService routeService,
boolean addingRoutes)
Starts the given route service
|
void |
stopRoute(RouteDefinition route)
Stops the given route.
|
void |
stopRoute(String routeId)
Stops the given route using
ShutdownStrategy . |
void |
stopRoute(String routeId,
long timeout,
TimeUnit timeUnit)
Stops the given route using
ShutdownStrategy with a specified timeout. |
boolean |
stopRoute(String routeId,
long timeout,
TimeUnit timeUnit,
boolean abortAfterTimeout)
Stops the given route using
ShutdownStrategy with a specified timeout
and optional abortAfterTimeout mode. |
protected void |
stopRouteService(RouteService routeService) |
protected void |
stopRouteService(RouteService routeService,
boolean removingRoutes) |
void |
suspendRoute(String routeId)
Suspends the given route using
ShutdownStrategy . |
void |
suspendRoute(String routeId,
long timeout,
TimeUnit timeUnit)
Suspends the given route using
ShutdownStrategy with a specified timeout. |
protected void |
suspendRouteService(RouteService routeService) |
String |
toString() |
doShutdown, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, stop, suspend
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getStatus, getVersion, stop
isSuspended, resume, suspend
public DefaultCamelContext()
CamelContext
using JndiRegistry
as registry,
but will silently fallback and use SimpleRegistry
if JNDI cannot be used.
Use one of the other constructors to force use an explicit registry / JNDI.public DefaultCamelContext(Context jndiContext)
CamelContext
using the given JNDI context as the registryjndiContext
- the JNDI contextpublic DefaultCamelContext(Registry registry)
CamelContext
using the given registryregistry
- the registrypublic <T extends CamelContext> T adapt(Class<T> type)
CamelContext
CamelContext
to the specialized type.
For example to adapt to ModelCamelContext
,
or SpringCamelContext, or CdiCamelContext, etc.adapt
in interface CamelContext
type
- the type to adapt toCamelContext
adapted to the given typepublic String getName()
CamelContext
getName
in interface CamelContext
public void setName(String name)
name
- the namepublic CamelContextNameStrategy getNameStrategy()
CamelContext
getNameStrategy
in interface CamelContext
public void setNameStrategy(CamelContextNameStrategy nameStrategy)
CamelContext
setNameStrategy
in interface CamelContext
nameStrategy
- name strategypublic ManagementNameStrategy getManagementNameStrategy()
CamelContext
getManagementNameStrategy
in interface CamelContext
public void setManagementNameStrategy(ManagementNameStrategy managementNameStrategy)
CamelContext
setManagementNameStrategy
in interface CamelContext
managementNameStrategy
- name strategypublic String getManagementName()
CamelContext
CamelContext
was registered in JMX.
The reason that a CamelContext
can have a different name in JMX is the fact to remedy for name clash
in JMX when having multiple CamelContext
s in the same JVM. Camel will automatic reassign and use
a free name to avoid failing to start.getManagementName
in interface CamelContext
public void setManagementName(String managementName)
public Component hasComponent(String componentName)
CamelContext
hasComponent
in interface CamelContext
componentName
- the name of the componentpublic void addComponent(String componentName, Component component)
CamelContext
addComponent
in interface CamelContext
componentName
- the name the component is registered ascomponent
- the componentpublic Component getComponent(String name)
CamelContext
getComponent
in interface CamelContext
name
- the name of the componentpublic Component getComponent(String name, boolean autoCreateComponents)
CamelContext
getComponent
in interface CamelContext
name
- the name of the componentautoCreateComponents
- whether or not the component should
be lazily created if it does not already existpublic <T extends Component> T getComponent(String name, Class<T> componentType)
CamelContext
getComponent
in interface CamelContext
name
- the name to lookupcomponentType
- the expected typepublic Component removeComponent(String componentName)
CamelContext
removeComponent
in interface CamelContext
componentName
- the component name to removepublic EndpointRegistry getEndpointRegistry()
CamelContext
EndpointRegistry
getEndpointRegistry
in interface CamelContext
public Collection<Endpoint> getEndpoints()
CamelContext
Collection
of all of the endpoints from the EndpointRegistry
getEndpoints
in interface CamelContext
public Map<String,Endpoint> getEndpointMap()
CamelContext
Map
containing all of the endpoints from the EndpointRegistry
getEndpointMap
in interface CamelContext
public Endpoint hasEndpoint(String uri)
CamelContext
EndpointRegistry
hasEndpoint
in interface CamelContext
uri
- the URI of the endpointpublic Endpoint addEndpoint(String uri, Endpoint endpoint) throws Exception
CamelContext
EndpointRegistry
using the given URI.addEndpoint
in interface CamelContext
uri
- the URI to be used to resolve this endpointendpoint
- the endpoint to be added to the registryException
- if the new endpoint could not be started or the old endpoint could not be stoppedpublic void removeEndpoint(Endpoint endpoint) throws Exception
CamelContext
EndpointRegistry
.
The endpoint being removed will be stopped first.removeEndpoint
in interface CamelContext
endpoint
- the endpointException
- if the endpoint could not be stoppedpublic Collection<Endpoint> removeEndpoints(String uri) throws Exception
CamelContext
EndpointRegistry
.
The endpoints being removed will be stopped first.removeEndpoints
in interface CamelContext
uri
- an uri or pattern to matchException
- if at least one endpoint could not be stoppedfor pattern
public Endpoint getEndpoint(String uri)
CamelContext
Endpoint
of the specified type.
If the name has a singleton endpoint registered, then the singleton is returned.
Otherwise, a new Endpoint
is created and registered in the EndpointRegistry
.getEndpoint
in interface CamelContext
uri
- the URI of the endpointpublic <T extends Endpoint> T getEndpoint(String name, Class<T> endpointType)
CamelContext
Endpoint
of the specified type.
If the name has a singleton endpoint registered, then the singleton is returned.
Otherwise, a new Endpoint
is created and registered in the EndpointRegistry
.getEndpoint
in interface CamelContext
name
- the name of the endpointendpointType
- the expected typepublic void addRegisterEndpointCallback(EndpointStrategy strategy)
CamelContext
callback
to allow you to do custom
logic when an Endpoint
is about to be registered to the EndpointRegistry
.
When a callback is added it will be executed on the already registered endpoints allowing you to catch-upaddRegisterEndpointCallback
in interface CamelContext
strategy
- callback to be invokedprotected Endpoint addEndpointToRegistry(String uri, Endpoint endpoint)
uri
- uri of the endpointendpoint
- the endpoint to addprotected static String normalizeEndpointUri(String uri)
uri
- the uriResolveEndpointFailedException
- if uri cannot be normalizedprotected org.apache.camel.impl.EndpointKey getEndpointKey(String uri)
DefaultEndpointRegistry
uri
- the endpoint uriprotected org.apache.camel.impl.EndpointKey getEndpointKey(String uri, Endpoint endpoint)
DefaultEndpointRegistry
uri
- the endpoint uriendpoint
- the endpointpublic List<RouteStartupOrder> getRouteStartupOrder()
CamelContext
getRouteStartupOrder
in interface CamelContext
public List<Route> getRoutes()
CamelContext
getRoutes
in interface CamelContext
public Route getRoute(String id)
CamelContext
getRoute
in interface CamelContext
id
- id of the routepublic Processor getProcessor(String id)
CamelContext
getProcessor
in interface CamelContext
id
- id of the processorpublic <T extends Processor> T getProcessor(String id, Class<T> type)
CamelContext
getProcessor
in interface CamelContext
id
- id of the processortype
- the processor typepublic <T extends ManagedProcessorMBean> T getManagedProcessor(String id, Class<T> type)
CamelContext
getManagedProcessor
in interface CamelContext
id
- id of the processortype
- the managed processor type from the org.apache.camel.api.management.mbean
package.public <T extends ManagedRouteMBean> T getManagedRoute(String routeId, Class<T> type)
CamelContext
getManagedRoute
in interface CamelContext
routeId
- id of the routetype
- the managed route type from the org.apache.camel.api.management.mbean
package.public ManagedCamelContextMBean getManagedCamelContext()
CamelContext
getManagedCamelContext
in interface CamelContext
public ProcessorDefinition getProcessorDefinition(String id)
CamelContext
getProcessorDefinition
in interface CamelContext
id
- id of the processor definitionpublic <T extends ProcessorDefinition> T getProcessorDefinition(String id, Class<T> type)
CamelContext
getProcessorDefinition
in interface CamelContext
id
- id of the processor definitiontype
- the processor definition type@Deprecated public void setRoutes(List<Route> routes)
public void addRoutes(RoutesBuilder builder) throws Exception
CamelContext
CamelContext
is already started. You may want to check the state of CamelContext
before
adding the routes, using the CamelContext.getStatus()
method.
Important: Each route in the same CamelContext
must have an unique route id.
If you use the API from CamelContext
or ModelCamelContext
to add routes, then any
new routes which has a route id that matches an old route, then the old route is replaced by the new route.addRoutes
in interface CamelContext
builder
- the builder which will create the routes and add them to this contextException
- if the routes could not be created for whatever reasonpublic RoutesDefinition loadRoutesDefinition(InputStream is) throws Exception
ModelCamelContext
InputStream
.loadRoutesDefinition
in interface CamelContext
loadRoutesDefinition
in interface ModelCamelContext
is
- input stream with the route(s) definition to addException
- if the route definitions could not be loaded for whatever reasonpublic RestsDefinition loadRestsDefinition(InputStream is) throws Exception
ModelCamelContext
InputStream
.loadRestsDefinition
in interface CamelContext
loadRestsDefinition
in interface ModelCamelContext
is
- input stream with the rest(s) definition to addException
- if the rest definitions could not be loaded for whatever reasonpublic void addRouteDefinitions(Collection<RouteDefinition> routeDefinitions) throws Exception
ModelCamelContext
CamelContext
must have an unique route id.
If you use the API from CamelContext
or ModelCamelContext
to add routes, then any
new routes which has a route id that matches an old route, then the old route is replaced by the new route.addRouteDefinitions
in interface CamelContext
addRouteDefinitions
in interface ModelCamelContext
routeDefinitions
- the route(s) definition to addException
- if the route definitions could not be created for whatever reasonpublic void addRouteDefinition(RouteDefinition routeDefinition) throws Exception
ModelCamelContext
CamelContext
must have an unique route id.
If you use the API from CamelContext
or ModelCamelContext
to add routes, then any
new routes which has a route id that matches an old route, then the old route is replaced by the new route.addRouteDefinition
in interface CamelContext
addRouteDefinition
in interface ModelCamelContext
routeDefinition
- the route definition to addException
- if the route definition could not be created for whatever reasonprotected boolean removeRouteDefinition(String key)
public void removeRouteDefinitions(Collection<RouteDefinition> routeDefinitions) throws Exception
ModelCamelContext
removeRouteDefinitions
in interface CamelContext
removeRouteDefinitions
in interface ModelCamelContext
routeDefinitions
- route(s) definitions to removeException
- if the route definitions could not be removed for whatever reasonpublic void removeRouteDefinition(RouteDefinition routeDefinition) throws Exception
ModelCamelContext
removeRouteDefinition
in interface CamelContext
removeRouteDefinition
in interface ModelCamelContext
routeDefinition
- route definition to removeException
- if the route definition could not be removed for whatever reasonpublic ServiceStatus getRouteStatus(String key)
CamelContext
getRouteStatus
in interface CamelContext
key
- the route idpublic void startRoute(RouteDefinition route) throws Exception
ModelCamelContext
startRoute
in interface CamelContext
startRoute
in interface ModelCamelContext
route
- the route to startException
- is thrown if the route could not be started for whatever reasonpublic boolean isStartingRoutes()
CamelContext
LifecycleStrategy
or the likes, in case
they need to react differently.isStartingRoutes
in interface CamelContext
public boolean isSetupRoutes()
CamelContext
LifecycleStrategy
or the likes, in case
they need to react differently.
As the startup procedure of CamelContext
is slightly different when using plain Java versus
Spring or Blueprint, then we need to know when Spring/Blueprint is setting up the routes, which
can happen after the CamelContext
itself is in started state, due the asynchronous event nature
of especially Blueprint.isSetupRoutes
in interface CamelContext
public void stopRoute(RouteDefinition route) throws Exception
ModelCamelContext
stopRoute
in interface CamelContext
stopRoute
in interface ModelCamelContext
route
- the route to stopException
- is thrown if the route could not be stopped for whatever reasonpublic void startAllRoutes() throws Exception
CamelContext
startAllRoutes
in interface CamelContext
Exception
- is thrown if a route could not be started for whatever reasonpublic void startRoute(String routeId) throws Exception
CamelContext
startRoute
in interface CamelContext
routeId
- the route idException
- is thrown if the route could not be started for whatever reasonpublic void resumeRoute(String routeId) throws Exception
CamelContext
resumeRoute
in interface CamelContext
routeId
- the route idException
- is thrown if the route could not be resumed for whatever reasonpublic boolean stopRoute(String routeId, long timeout, TimeUnit timeUnit, boolean abortAfterTimeout) throws Exception
CamelContext
ShutdownStrategy
with a specified timeout
and optional abortAfterTimeout mode.stopRoute
in interface CamelContext
routeId
- the route idtimeout
- timeouttimeUnit
- the unit to useabortAfterTimeout
- should abort shutdown after timeoutException
- is thrown if the route could not be stopped for whatever reasonCamelContext.suspendRoute(String, long, java.util.concurrent.TimeUnit)
public void stopRoute(String routeId) throws Exception
CamelContext
ShutdownStrategy
.stopRoute
in interface CamelContext
routeId
- the route idException
- is thrown if the route could not be stopped for whatever reasonCamelContext.suspendRoute(String)
public void stopRoute(String routeId, long timeout, TimeUnit timeUnit) throws Exception
CamelContext
ShutdownStrategy
with a specified timeout.stopRoute
in interface CamelContext
routeId
- the route idtimeout
- timeouttimeUnit
- the unit to useException
- is thrown if the route could not be stopped for whatever reasonCamelContext.suspendRoute(String, long, java.util.concurrent.TimeUnit)
public void shutdownRoute(String routeId) throws Exception
CamelContext
ShutdownStrategy
.shutdownRoute
in interface CamelContext
routeId
- the route idException
- is thrown if the route could not be shutdown for whatever reasonpublic void shutdownRoute(String routeId, long timeout, TimeUnit timeUnit) throws Exception
CamelContext
ShutdownStrategy
with a specified timeout.shutdownRoute
in interface CamelContext
routeId
- the route idtimeout
- timeouttimeUnit
- the unit to useException
- is thrown if the route could not be shutdown for whatever reasonpublic boolean removeRoute(String routeId) throws Exception
CamelContext
Endpoint
s which are in the static cache of
EndpointRegistry
and are only used by the route (not used by other routes)
will also be removed. But Endpoint
s which may have been created as part of routing messages by the route,
and those endpoints are enlisted in the dynamic cache of EndpointRegistry
are
not removed. To remove those dynamic kind of endpoints, use the CamelContext.removeEndpoints(String)
method.
If not removing those endpoints, they will be kept in the dynamic cache of EndpointRegistry
,
but my eventually be removed (evicted) when they have not been in use for a longer period of time; and the
dynamic cache upper limit is hit, and it evicts the least used endpoints.
End users can use this method to remove unwanted routes or temporary routes which no longer is in demand.removeRoute
in interface CamelContext
routeId
- the route idException
- is thrown if the route could not be shutdown for whatever reasonpublic void suspendRoute(String routeId) throws Exception
CamelContext
ShutdownStrategy
.
Suspending a route is more gently than stopping, as the route consumers will be suspended (if they support)
otherwise the consumers will be stopped.
By suspending the route services will be kept running (if possible) and therefore its faster to resume the route.
If the route does not support suspension the route will be stopped insteadsuspendRoute
in interface CamelContext
routeId
- the route idException
- is thrown if the route could not be suspended for whatever reasonpublic void suspendRoute(String routeId, long timeout, TimeUnit timeUnit) throws Exception
CamelContext
ShutdownStrategy
with a specified timeout.
Suspending a route is more gently than stopping, as the route consumers will be suspended (if they support)
otherwise the consumers will be stopped.
By suspending the route services will be kept running (if possible) and therefore its faster to resume the route.
If the route does not support suspension the route will be stopped insteadsuspendRoute
in interface CamelContext
routeId
- the route idtimeout
- timeouttimeUnit
- the unit to useException
- is thrown if the route could not be suspended for whatever reasonpublic void addService(Object object) throws Exception
CamelContext
CamelContext
injected if its CamelContextAware
.
The service will also be enlisted in JMX for management (if JMX is enabled).
The service will be started, if its not already started.addService
in interface CamelContext
object
- the serviceException
- can be thrown when starting the servicepublic void addService(Object object, boolean stopOnShutdown) throws Exception
CamelContext
CamelContext
injected if its CamelContextAware
.
The service will also be enlisted in JMX for management (if JMX is enabled).
The service will be started, if its not already started.
If the option closeOnShutdown is true then this context will control the lifecycle, ensuring
the service is stopped when the context stops.
If the option closeOnShutdown is false then this context will not stop the service when the context stops.addService
in interface CamelContext
object
- the servicestopOnShutdown
- whether to stop the service when this CamelContext shutdown.Exception
- can be thrown when starting the servicepublic boolean removeService(Object object) throws Exception
CamelContext
CamelContext.addService(Object)
method.
This method will not change the service lifecycle.removeService
in interface CamelContext
object
- the serviceException
- can be thrown if error removing the servicepublic boolean hasService(Object object)
CamelContext
hasService
in interface CamelContext
object
- the servicepublic <T> T hasService(Class<T> type)
CamelContext
hasService
in interface CamelContext
type
- the class typepublic void deferStartService(Object object, boolean stopOnShutdown) throws Exception
CamelContext
CamelContext
is started and has initialized all its prior services and routes.
If CamelContext
is already started then the service is started immediately.deferStartService
in interface CamelContext
object
- the servicestopOnShutdown
- whether to stop the service when this CamelContext shutdown. Setting this to true will keep a reference to the service in
this CamelContext
until the context is stopped. So do not use it for short lived services.Exception
- can be thrown when starting the service, which is only attempted if CamelContext
has already been started when calling this method.public void addStartupListener(StartupListener listener) throws Exception
CamelContext
CamelContext
have just been started.
This allows listeners to do any custom work after the routes and other services have been started and are running.
Important: The listener will always be invoked, also if the CamelContext
has already been
started, see the StartupListener.onCamelContextStarted(CamelContext, boolean)
method.addStartupListener
in interface CamelContext
listener
- the listenerException
- can be thrown if CamelContext
is already started and the listener is invoked
and cause an exception to be thrownpublic String resolveComponentDefaultName(String javaType)
CamelContext
resolveComponentDefaultName
in interface CamelContext
javaType
- the FQN name of the java typepublic Map<String,Properties> findComponents() throws LoadPropertiesException, IOException
CamelContext
Registry
.findComponents
in interface CamelContext
LoadPropertiesException
- is thrown if error during classpath discovery of the componentsIOException
- is thrown if error during classpath discovery of the componentspublic Map<String,Properties> findEips() throws LoadPropertiesException, IOException
CamelContext
findEips
in interface CamelContext
LoadPropertiesException
- is thrown if error during classpath discovery of the EIPsIOException
- is thrown if error during classpath discovery of the EIPspublic String getComponentDocumentation(String componentName) throws IOException
CamelContext
getComponentDocumentation
in interface CamelContext
IOException
public String getComponentParameterJsonSchema(String componentName) throws IOException
CamelContext
getComponentParameterJsonSchema
in interface CamelContext
IOException
public String getDataFormatParameterJsonSchema(String dataFormatName) throws IOException
CamelContext
DataFormat
parameters for the given data format name.getDataFormatParameterJsonSchema
in interface CamelContext
IOException
public String getLanguageParameterJsonSchema(String languageName) throws IOException
CamelContext
Language
parameters for the given language name.getLanguageParameterJsonSchema
in interface CamelContext
IOException
public String getEipParameterJsonSchema(String eipName) throws IOException
CamelContext
getEipParameterJsonSchema
in interface CamelContext
IOException
public String explainEipJson(String nameOrId, boolean includeAllOptions)
CamelContext
explainEipJson
in interface CamelContext
nameOrId
- the name of the EIP (NamedNode.getShortName()
or a node id to refer to a specific node from the routes.includeAllOptions
- whether to include non configured options also (eg default options)public String explainDataFormatJson(String dataFormatName, DataFormat dataFormat, boolean includeAllOptions)
CamelContext
explainDataFormatJson
in interface CamelContext
dataFormat
- the data format instance.includeAllOptions
- whether to include non configured options also (eg default options)public String explainComponentJson(String componentName, boolean includeAllOptions)
CamelContext
explainComponentJson
in interface CamelContext
componentName
- the name of the component.includeAllOptions
- whether to include non configured options also (eg default options)public String explainEndpointJson(String uri, boolean includeAllOptions)
CamelContext
explainEndpointJson
in interface CamelContext
uri
- the endpoint uriincludeAllOptions
- whether to include non configured options also (eg default options)public String createRouteStaticEndpointJson(String routeId)
CamelContext
createRouteStaticEndpointJson
in interface CamelContext
routeId
- for a particular route, or null for all routespublic String createRouteStaticEndpointJson(String routeId, boolean includeDynamic)
CamelContext
createRouteStaticEndpointJson
in interface CamelContext
routeId
- for a particular route, or null for all routesincludeDynamic
- whether to include dynamic endpointspublic Language resolveLanguage(String language)
CamelContext
resolveLanguage
in interface CamelContext
language
- name of the languagepublic String getPropertyPrefixToken()
CamelContext
null
.getPropertyPrefixToken
in interface CamelContext
null
public String getPropertySuffixToken()
CamelContext
null
.getPropertySuffixToken
in interface CamelContext
null
public String resolvePropertyPlaceholders(String text) throws Exception
CamelContext
resolvePropertyPlaceholders
in interface CamelContext
text
- the text such as an endpoint uri or the likesException
- is thrown if property placeholders was used and there was an error resolving thempublic TypeConverter getTypeConverter()
CamelContext
getTypeConverter
in interface CamelContext
public void setTypeConverter(TypeConverter typeConverter)
public TypeConverterRegistry getTypeConverterRegistry()
CamelContext
getTypeConverterRegistry
in interface CamelContext
public void setTypeConverterRegistry(TypeConverterRegistry typeConverterRegistry)
public Injector getInjector()
CamelContext
getInjector
in interface CamelContext
public void setInjector(Injector injector)
public ManagementMBeanAssembler getManagementMBeanAssembler()
CamelContext
getManagementMBeanAssembler
in interface CamelContext
public void setManagementMBeanAssembler(ManagementMBeanAssembler managementMBeanAssembler)
public ComponentResolver getComponentResolver()
public void setComponentResolver(ComponentResolver componentResolver)
public LanguageResolver getLanguageResolver()
public void setLanguageResolver(LanguageResolver languageResolver)
public boolean isAutoCreateComponents()
public void setAutoCreateComponents(boolean autoCreateComponents)
public Registry getRegistry()
CamelContext
getRegistry
in interface CamelContext
public <T> T getRegistry(Class<T> type)
CamelContext
getRegistry
in interface CamelContext
type
- the registry type such as JndiRegistry
public void setJndiContext(Context jndiContext)
jndiContext
- is the JNDI context to use as the registrysetRegistry(org.apache.camel.spi.Registry)
public void setRegistry(Registry registry)
public List<LifecycleStrategy> getLifecycleStrategies()
CamelContext
getLifecycleStrategies
in interface CamelContext
public void setLifecycleStrategies(List<LifecycleStrategy> lifecycleStrategies)
public void addLifecycleStrategy(LifecycleStrategy lifecycleStrategy)
CamelContext
addLifecycleStrategy
in interface CamelContext
lifecycleStrategy
- the strategypublic void setupRoutes(boolean done)
CamelContext
CamelContext
that the process to initialize setup routes is in progress.setupRoutes
in interface CamelContext
done
- false to start the process, call again with true to signal its done.CamelContext.isSetupRoutes()
public List<RouteDefinition> getRouteDefinitions()
ModelCamelContext
getRouteDefinitions
in interface CamelContext
getRouteDefinitions
in interface ModelCamelContext
public RouteDefinition getRouteDefinition(String id)
ModelCamelContext
getRouteDefinition
in interface CamelContext
getRouteDefinition
in interface ModelCamelContext
id
- id of the routepublic List<RestDefinition> getRestDefinitions()
ModelCamelContext
getRestDefinitions
in interface CamelContext
getRestDefinitions
in interface ModelCamelContext
public void addRestDefinitions(Collection<RestDefinition> restDefinitions) throws Exception
ModelCamelContext
addRestDefinitions
in interface CamelContext
addRestDefinitions
in interface ModelCamelContext
restDefinitions
- the rest(s) definition to addException
- if the rest definitions could not be created for whatever reasonpublic RestConfiguration getRestConfiguration()
CamelContext
getRestConfiguration
in interface CamelContext
public void setRestConfiguration(RestConfiguration restConfiguration)
CamelContext
RestConfiguration
setRestConfiguration
in interface CamelContext
restConfiguration
- the REST configurationpublic Collection<RestConfiguration> getRestConfigurations()
CamelContext
getRestConfigurations
in interface CamelContext
public void addRestConfiguration(RestConfiguration restConfiguration)
CamelContext
RestConfiguration
addRestConfiguration
in interface CamelContext
restConfiguration
- the REST configurationpublic RestConfiguration getRestConfiguration(String component, boolean defaultIfNotExist)
CamelContext
getRestConfiguration
in interface CamelContext
component
- the component name to get the configurationdefaultIfNotExist
- determine if the default configuration is returned if there isn't a
specific configuration for the given componentpublic List<InterceptStrategy> getInterceptStrategies()
CamelContext
getInterceptStrategies
in interface CamelContext
public void setInterceptStrategies(List<InterceptStrategy> interceptStrategies)
public void addInterceptStrategy(InterceptStrategy interceptStrategy)
CamelContext
addInterceptStrategy
in interface CamelContext
interceptStrategy
- the strategypublic List<RoutePolicyFactory> getRoutePolicyFactories()
CamelContext
getRoutePolicyFactories
in interface CamelContext
public void setRoutePolicyFactories(List<RoutePolicyFactory> routePolicyFactories)
public void addRoutePolicyFactory(RoutePolicyFactory routePolicyFactory)
CamelContext
addRoutePolicyFactory
in interface CamelContext
routePolicyFactory
- the factorypublic void setStreamCaching(Boolean cache)
RuntimeConfiguration
setStreamCaching
in interface RuntimeConfiguration
cache
- whether stream caching is enabled or notpublic Boolean isStreamCaching()
RuntimeConfiguration
isStreamCaching
in interface RuntimeConfiguration
public void setTracing(Boolean tracing)
RuntimeConfiguration
setTracing
in interface RuntimeConfiguration
tracing
- whether to enable tracing.public Boolean isTracing()
RuntimeConfiguration
isTracing
in interface RuntimeConfiguration
public Boolean isMessageHistory()
RuntimeConfiguration
isMessageHistory
in interface RuntimeConfiguration
public void setMessageHistory(Boolean messageHistory)
RuntimeConfiguration
setMessageHistory
in interface RuntimeConfiguration
messageHistory
- whether message history is enabledpublic Boolean isHandleFault()
RuntimeConfiguration
isHandleFault
in interface RuntimeConfiguration
public void setHandleFault(Boolean handleFault)
RuntimeConfiguration
setHandleFault
in interface RuntimeConfiguration
handleFault
- whether to enable fault handling.public Long getDelayer()
RuntimeConfiguration
getDelayer
in interface RuntimeConfiguration
public void setDelayer(Long delay)
RuntimeConfiguration
setDelayer
in interface RuntimeConfiguration
delay
- delay in millispublic ProducerTemplate createProducerTemplate()
CamelContext
ProducerTemplate
which is started and therefore ready to use right away.
See this FAQ before use:
Why does Camel use too many threads with ProducerTemplate?
Important: Make sure to call Service.stop()
when you are done using the template,
to clean up any resources.
Will use cache size defined in Camel property with key Exchange.MAXIMUM_CACHE_POOL_SIZE
.
If no key was defined then it will fallback to a default size of 1000.
You can also use the ProducerTemplate.setMaximumCacheSize(int)
method to use a custom value
before starting the template.createProducerTemplate
in interface CamelContext
public ProducerTemplate createProducerTemplate(int maximumCacheSize)
CamelContext
ProducerTemplate
which is started and therefore ready to use right away.
See this FAQ before use:
Why does Camel use too many threads with ProducerTemplate?
Important: Make sure to call Service.stop()
when you are done using the template,
to clean up any resources.createProducerTemplate
in interface CamelContext
maximumCacheSize
- the maximum cache sizepublic ConsumerTemplate createConsumerTemplate()
CamelContext
ConsumerTemplate
which is started and therefore ready to use right away.
See this FAQ before use:
Why does Camel use too many threads with ProducerTemplate? as it also applies for ConsumerTemplate.
Important: Make sure to call Service.stop()
when you are done using the template,
to clean up any resources.
Will use cache size defined in Camel property with key Exchange.MAXIMUM_CACHE_POOL_SIZE
.
If no key was defined then it will fallback to a default size of 1000.
You can also use the ConsumerTemplate.setMaximumCacheSize(int)
method to use a custom value
before starting the template.createConsumerTemplate
in interface CamelContext
public ConsumerTemplate createConsumerTemplate(int maximumCacheSize)
CamelContext
ConsumerTemplate
which is started and therefore ready to use right away.
See this FAQ before use:
Why does Camel use too many threads with ProducerTemplate? as it also applies for ConsumerTemplate.
Important: Make sure to call Service.stop()
when you are done using the template,
to clean up any resources.createConsumerTemplate
in interface CamelContext
maximumCacheSize
- the maximum cache sizepublic ErrorHandlerBuilder getErrorHandlerBuilder()
CamelContext
getErrorHandlerBuilder
in interface CamelContext
public void setErrorHandlerBuilder(ErrorHandlerFactory errorHandlerBuilder)
CamelContext
setErrorHandlerBuilder
in interface CamelContext
errorHandlerBuilder
- the builderpublic ScheduledExecutorService getErrorHandlerExecutorService()
CamelContext
getErrorHandlerExecutorService
in interface CamelContext
public void setProducerServicePool(ServicePool<Endpoint,Producer> producerServicePool)
CamelContext
Producer
pooling.setProducerServicePool
in interface CamelContext
producerServicePool
- the poolpublic ServicePool<Endpoint,Producer> getProducerServicePool()
CamelContext
Producer
pooling.getProducerServicePool
in interface CamelContext
public ServicePool<Endpoint,PollingConsumer> getPollingConsumerServicePool()
CamelContext
Producer
pooling.getPollingConsumerServicePool
in interface CamelContext
public void setPollingConsumerServicePool(ServicePool<Endpoint,PollingConsumer> pollingConsumerServicePool)
CamelContext
PollingConsumer
pooling.setPollingConsumerServicePool
in interface CamelContext
pollingConsumerServicePool
- the poolpublic UnitOfWorkFactory getUnitOfWorkFactory()
CamelContext
UnitOfWorkFactory
to use.getUnitOfWorkFactory
in interface CamelContext
public void setUnitOfWorkFactory(UnitOfWorkFactory unitOfWorkFactory)
CamelContext
UnitOfWorkFactory
to use.setUnitOfWorkFactory
in interface CamelContext
public RuntimeEndpointRegistry getRuntimeEndpointRegistry()
CamelContext
RuntimeEndpointRegistry
to use, or null if none is in use.getRuntimeEndpointRegistry
in interface CamelContext
public void setRuntimeEndpointRegistry(RuntimeEndpointRegistry runtimeEndpointRegistry)
CamelContext
RuntimeEndpointRegistry
to use.setRuntimeEndpointRegistry
in interface CamelContext
public String getUptime()
CamelContext
getUptime
in interface CamelContext
public long getUptimeMillis()
CamelContext
getUptimeMillis
in interface CamelContext
protected void doSuspend() throws Exception
ServiceSupport
doSuspend
in class ServiceSupport
Exception
protected void doResume() throws Exception
ServiceSupport
doResume
in class ServiceSupport
Exception
public void start() throws Exception
Service
start
in interface CamelContext
start
in interface Service
start
in class ServiceSupport
Exception
- is thrown if starting failedprotected void doStart() throws Exception
ServiceSupport
ServiceSupport.doStop()
for more details.doStart
in class ServiceSupport
Exception
ServiceSupport.doStop()
protected void doStop() throws Exception
ServiceSupport
ServiceSupport.doStop()
method when
the service is being stopped. This method will also be invoked
if the service is still in uninitialized state (eg has not
been started). The method is always called to allow the service
to do custom logic when the service is being stopped, such as when
CamelContext
is shutting down.doStop
in class ServiceSupport
Exception
ServiceSupport.doStart()
protected void doStartOrResumeRoutes(Map<String,RouteService> routeServices, boolean checkClash, boolean startConsumer, boolean resumeConsumer, boolean addingRoutes) throws Exception
routeServices
- the routes to start (will only start a route if its not already started)checkClash
- whether to check for startup ordering clashstartConsumer
- whether the route consumer should be started. Can be used to warmup the route without starting the consumer.resumeConsumer
- whether the route consumer should be resumed.addingRoutes
- whether we are adding new routesException
- is thrown if error starting routesprotected boolean routeSupportsSuspension(String routeId)
protected void startRouteDefinitions(Collection<RouteDefinition> list) throws Exception
Exception
protected void startRouteService(RouteService routeService, boolean addingRoutes) throws Exception
Exception
protected void resumeRouteService(RouteService routeService) throws Exception
Exception
protected void stopRouteService(RouteService routeService, boolean removingRoutes) throws Exception
Exception
protected void logRouteState(Route route, String state)
protected void stopRouteService(RouteService routeService) throws Exception
Exception
protected void shutdownRouteService(RouteService routeService) throws Exception
Exception
protected void suspendRouteService(RouteService routeService) throws Exception
Exception
protected void safelyStartRouteServices(boolean checkClash, boolean startConsumer, boolean resumeConsumer, boolean addingRoutes, Collection<RouteService> routeServices) throws Exception
checkClash
- whether to check for startup order clashstartConsumer
- whether the route consumer should be started. Can be used to warmup the route without starting the consumer.resumeConsumer
- whether the route consumer should be resumed.addingRoutes
- whether we are adding new routesrouteServices
- the routesException
- is thrown if error starting the routesprotected void safelyStartRouteServices(boolean forceAutoStart, boolean checkClash, boolean startConsumer, boolean resumeConsumer, boolean addingRoutes, RouteService... routeServices) throws Exception
protected void forceLazyInitialization()
protected void forceStopLazyInitialization()
protected TypeConverter createTypeConverter()
protected Injector createInjector()
protected ManagementMBeanAssembler createManagementMBeanAssembler()
protected ComponentResolver createComponentResolver()
protected Registry createRegistry()
protected Endpoint createEndpoint(String uri)
Registry
uri
- the uri for the endpoint to be createdprotected Endpoint convertBeanToEndpoint(String uri, Object bean)
Registry
to an endpoint using
some kind of transformation or wrapperuri
- the uri for the endpoint (and name in the registry)bean
- the bean to be converted to an endpoint, which will be not nullprotected boolean shouldStartRoutes()
protected PropertiesComponent getPropertiesComponent()
null
if no properties component is in use.public void setDataFormats(Map<String,DataFormatDefinition> dataFormats)
ModelCamelContext
setDataFormats
in interface CamelContext
setDataFormats
in interface ModelCamelContext
dataFormats
- the data formatspublic Map<String,DataFormatDefinition> getDataFormats()
ModelCamelContext
getDataFormats
in interface CamelContext
getDataFormats
in interface ModelCamelContext
public Map<String,String> getProperties()
CamelContext
getProperties
in interface CamelContext
public void setProperties(Map<String,String> properties)
CamelContext
setProperties
in interface CamelContext
properties
- propertiespublic FactoryFinder getDefaultFactoryFinder()
CamelContext
getDefaultFactoryFinder
in interface CamelContext
public void setFactoryFinderResolver(FactoryFinderResolver resolver)
CamelContext
setFactoryFinderResolver
in interface CamelContext
resolver
- the factory finder resolverpublic FactoryFinder getFactoryFinder(String path) throws NoFactoryAvailableException
CamelContext
getFactoryFinder
in interface CamelContext
path
- the META-INF pathNoFactoryAvailableException
- is thrown if a factory could not be foundpublic ClassResolver getClassResolver()
CamelContext
getClassResolver
in interface CamelContext
public void setClassResolver(ClassResolver classResolver)
CamelContext
setClassResolver
in interface CamelContext
classResolver
- the resolverpublic PackageScanClassResolver getPackageScanClassResolver()
CamelContext
getPackageScanClassResolver
in interface CamelContext
public void setPackageScanClassResolver(PackageScanClassResolver packageScanClassResolver)
CamelContext
setPackageScanClassResolver
in interface CamelContext
packageScanClassResolver
- the resolverpublic List<String> getComponentNames()
CamelContext
getComponentNames
in interface CamelContext
public List<String> getLanguageNames()
CamelContext
getLanguageNames
in interface CamelContext
public ModelJAXBContextFactory getModelJAXBContextFactory()
CamelContext
getModelJAXBContextFactory
in interface CamelContext
public void setModelJAXBContextFactory(ModelJAXBContextFactory modelJAXBContextFactory)
CamelContext
setModelJAXBContextFactory
in interface CamelContext
modelJAXBContextFactory
- a JAXB Context factorypublic NodeIdFactory getNodeIdFactory()
CamelContext
getNodeIdFactory
in interface CamelContext
public void setNodeIdFactory(NodeIdFactory idFactory)
CamelContext
setNodeIdFactory
in interface CamelContext
idFactory
- custom factory to usepublic ManagementStrategy getManagementStrategy()
CamelContext
getManagementStrategy
in interface CamelContext
public void setManagementStrategy(ManagementStrategy managementStrategy)
CamelContext
setManagementStrategy
in interface CamelContext
managementStrategy
- the management strategypublic InterceptStrategy getDefaultTracer()
CamelContext
getDefaultTracer
in interface CamelContext
public void setDefaultTracer(InterceptStrategy tracer)
CamelContext
setDefaultTracer
in interface CamelContext
tracer
- the custom tracer to use as default tracerpublic InterceptStrategy getDefaultBacklogTracer()
CamelContext
getDefaultBacklogTracer
in interface CamelContext
public void setDefaultBacklogTracer(InterceptStrategy backlogTracer)
CamelContext
setDefaultBacklogTracer
in interface CamelContext
backlogTracer
- the custom tracer to use as default backlog tracerpublic InterceptStrategy getDefaultBacklogDebugger()
CamelContext
getDefaultBacklogDebugger
in interface CamelContext
public void setDefaultBacklogDebugger(InterceptStrategy defaultBacklogDebugger)
CamelContext
setDefaultBacklogDebugger
in interface CamelContext
defaultBacklogDebugger
- the custom debugger to use as default backlog debuggerpublic void disableJMX()
CamelContext
ManagementStrategy
.
Important: This method must be called before the CamelContext
is started.disableJMX
in interface CamelContext
public InflightRepository getInflightRepository()
CamelContext
getInflightRepository
in interface CamelContext
public void setInflightRepository(InflightRepository repository)
CamelContext
setInflightRepository
in interface CamelContext
repository
- the repositorypublic AsyncProcessorAwaitManager getAsyncProcessorAwaitManager()
CamelContext
AsyncProcessor
await manager.getAsyncProcessorAwaitManager
in interface CamelContext
public void setAsyncProcessorAwaitManager(AsyncProcessorAwaitManager asyncProcessorAwaitManager)
CamelContext
AsyncProcessor
await manager.setAsyncProcessorAwaitManager
in interface CamelContext
asyncProcessorAwaitManager
- the managerpublic void setAutoStartup(Boolean autoStartup)
RuntimeConfiguration
CamelContext
s are always started.
CamelContext
then that takes precedence
and no routes is started. You would need to start CamelContext
explicit using
the CamelContext.start()
method, to start the context, and then
you would need to start the routes manually using CamelContext.startRoute(String)
.
Default is true to always start up.setAutoStartup
in interface RuntimeConfiguration
autoStartup
- whether to start up automatically.public Boolean isAutoStartup()
RuntimeConfiguration
CamelContext
s are always started.
isAutoStartup
in interface RuntimeConfiguration
@Deprecated public Boolean isLazyLoadTypeConverters()
CamelContext
isLazyLoadTypeConverters
in interface CamelContext
@Deprecated public void setLazyLoadTypeConverters(Boolean lazyLoadTypeConverters)
CamelContext
setLazyLoadTypeConverters
in interface CamelContext
lazyLoadTypeConverters
- true to load lazy, false to load on startuppublic Boolean isTypeConverterStatisticsEnabled()
CamelContext
isTypeConverterStatisticsEnabled
in interface CamelContext
public void setTypeConverterStatisticsEnabled(Boolean typeConverterStatisticsEnabled)
CamelContext
org.apache.camel.spi.TypeConverterRegistry#getStatistics()#setTypeConverterStatisticsEnabled(Boolean)
method,
or from JMX on the ManagedTypeConverterRegistryMBean
mbean.setTypeConverterStatisticsEnabled
in interface CamelContext
typeConverterStatisticsEnabled
- true to enable, false to disablepublic Boolean isUseMDCLogging()
CamelContext
isUseMDCLogging
in interface CamelContext
public void setUseMDCLogging(Boolean useMDCLogging)
CamelContext
setUseMDCLogging
in interface CamelContext
useMDCLogging
- true to enable MDC logging, false to disablepublic Boolean isUseBreadcrumb()
CamelContext
isUseBreadcrumb
in interface CamelContext
public void setUseBreadcrumb(Boolean useBreadcrumb)
CamelContext
setUseBreadcrumb
in interface CamelContext
useBreadcrumb
- true to enable breadcrumb, false to disablepublic ClassLoader getApplicationContextClassLoader()
CamelContext
getApplicationContextClassLoader
in interface CamelContext
public void setApplicationContextClassLoader(ClassLoader classLoader)
CamelContext
setApplicationContextClassLoader
in interface CamelContext
classLoader
- the class loaderpublic DataFormatResolver getDataFormatResolver()
CamelContext
getDataFormatResolver
in interface CamelContext
public void setDataFormatResolver(DataFormatResolver dataFormatResolver)
CamelContext
setDataFormatResolver
in interface CamelContext
dataFormatResolver
- the resolverpublic DataFormat resolveDataFormat(String name)
CamelContext
resolveDataFormat
in interface CamelContext
name
- the data format name or a reference to it in the Registry
public DataFormatDefinition resolveDataFormatDefinition(String name)
ModelCamelContext
resolveDataFormatDefinition
in interface CamelContext
resolveDataFormatDefinition
in interface ModelCamelContext
name
- the data format definition name or a reference to it in the Registry
@Deprecated protected Component lookupPropertiesComponent()
public ShutdownStrategy getShutdownStrategy()
CamelContext
getShutdownStrategy
in interface CamelContext
public void setShutdownStrategy(ShutdownStrategy shutdownStrategy)
CamelContext
setShutdownStrategy
in interface CamelContext
shutdownStrategy
- the custom strategypublic ShutdownRoute getShutdownRoute()
RuntimeConfiguration
getShutdownRoute
in interface RuntimeConfiguration
public void setShutdownRoute(ShutdownRoute shutdownRoute)
RuntimeConfiguration
setShutdownRoute
in interface RuntimeConfiguration
shutdownRoute
- the option to use.public ShutdownRunningTask getShutdownRunningTask()
RuntimeConfiguration
getShutdownRunningTask
in interface RuntimeConfiguration
public void setShutdownRunningTask(ShutdownRunningTask shutdownRunningTask)
RuntimeConfiguration
setShutdownRunningTask
in interface RuntimeConfiguration
shutdownRunningTask
- the option to use.public void setAllowUseOriginalMessage(Boolean allowUseOriginalMessage)
RuntimeConfiguration
UnitOfWork.getOriginalInMessage()
.
Turning this off can optimize performance, as defensive copy of the original message is not needed.setAllowUseOriginalMessage
in interface RuntimeConfiguration
allowUseOriginalMessage
- the option to use.public Boolean isAllowUseOriginalMessage()
RuntimeConfiguration
UnitOfWork.getOriginalInMessage()
.
Turning this off can optimize performance, as defensive copy of the original message is not needed.isAllowUseOriginalMessage
in interface RuntimeConfiguration
public ExecutorServiceManager getExecutorServiceManager()
CamelContext
ExecutorServiceManager
getExecutorServiceManager
in interface CamelContext
@Deprecated public ExecutorServiceStrategy getExecutorServiceStrategy()
CamelContext
ExecutorServiceStrategy
getExecutorServiceStrategy
in interface CamelContext
public void setExecutorServiceManager(ExecutorServiceManager executorServiceManager)
CamelContext
ExecutorServiceManager
setExecutorServiceManager
in interface CamelContext
executorServiceManager
- the custom managerpublic ProcessorFactory getProcessorFactory()
CamelContext
ProcessorFactory
getProcessorFactory
in interface CamelContext
public void setProcessorFactory(ProcessorFactory processorFactory)
CamelContext
ProcessorFactory
setProcessorFactory
in interface CamelContext
processorFactory
- the custom factorypublic MessageHistoryFactory getMessageHistoryFactory()
CamelContext
MessageHistoryFactory
getMessageHistoryFactory
in interface CamelContext
public void setMessageHistoryFactory(MessageHistoryFactory messageHistoryFactory)
CamelContext
MessageHistoryFactory
setMessageHistoryFactory
in interface CamelContext
messageHistoryFactory
- the custom factorypublic Debugger getDebugger()
CamelContext
Debugger
getDebugger
in interface CamelContext
public void setDebugger(Debugger debugger)
CamelContext
Debugger
setDebugger
in interface CamelContext
debugger
- the debuggerpublic UuidGenerator getUuidGenerator()
CamelContext
UuidGenerator
getUuidGenerator
in interface CamelContext
public void setUuidGenerator(UuidGenerator uuidGenerator)
CamelContext
UuidGenerator
(should only be set once)setUuidGenerator
in interface CamelContext
uuidGenerator
- the UUID Generatorpublic StreamCachingStrategy getStreamCachingStrategy()
CamelContext
StreamCachingStrategy
to use.getStreamCachingStrategy
in interface CamelContext
public void setStreamCachingStrategy(StreamCachingStrategy streamCachingStrategy)
CamelContext
StreamCachingStrategy
to use.setStreamCachingStrategy
in interface CamelContext
public RestRegistry getRestRegistry()
CamelContext
RestRegistry
to usegetRestRegistry
in interface CamelContext
public void setRestRegistry(RestRegistry restRegistry)
CamelContext
RestRegistry
to use.setRestRegistry
in interface CamelContext
public String getProperty(String name)
CamelContext
getProperty
in interface CamelContext
protected Map<String,RouteService> getRouteServices()
protected ManagementStrategy createManagementStrategy()
public static void setContextCounter(int value)
value
- new value for the context counterprotected ModelJAXBContextFactory createModelJAXBContextFactory()
Apache Camel