Package org.apache.camel.spring
Class SpringCamelContext
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.impl.engine.AbstractCamelContext
-
- org.apache.camel.impl.engine.SimpleCamelContext
-
- org.apache.camel.impl.DefaultCamelContext
-
- org.apache.camel.spring.SpringCamelContext
-
- All Implemented Interfaces:
AutoCloseable
,EventListener
,org.apache.camel.CamelContext
,org.apache.camel.CamelContextLifecycle
,org.apache.camel.CatalogCamelContext
,org.apache.camel.ExtendedCamelContext
,org.apache.camel.model.Model
,org.apache.camel.model.ModelCamelContext
,org.apache.camel.RuntimeConfiguration
,org.apache.camel.Suspendable
,Aware
,ApplicationContextAware
,ApplicationListener<ApplicationEvent>
,Lifecycle
,Phased
,Ordered
public class SpringCamelContext extends org.apache.camel.impl.DefaultCamelContext implements Lifecycle, ApplicationContextAware, Phased, ApplicationListener<ApplicationEvent>, Ordered
A Spring aware implementation ofCamelContext
which will automatically register itself with Springs lifecycle methods plus allows spring to be used to customize a any Type Converters as well as supporting accessing components and beans via the SpringApplicationContext
-
-
Field Summary
-
Fields inherited from class org.apache.camel.support.service.BaseService
BUILDED, FAILED, INITIALIZED, INITIALIZING, NEW, SHUTDOWN, SHUTTINGDOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING
-
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
-
Constructor Summary
Constructors Constructor Description SpringCamelContext()
SpringCamelContext(ApplicationContext applicationContext)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected org.apache.camel.Endpoint
convertBeanToEndpoint(String uri, Object bean)
protected EventEndpoint
createEventEndpoint()
protected org.apache.camel.spi.Injector
createInjector()
protected org.apache.camel.spi.ModelJAXBContextFactory
createModelJAXBContextFactory()
protected org.apache.camel.spi.Registry
createRegistry()
ApplicationContext
getApplicationContext()
int
getOrder()
int
getPhase()
boolean
isRunning()
boolean
isShutdownEager()
Whether to shutdown thisSpringCamelContext
eager (first) when SpringApplicationContext
is being stopped.void
onApplicationEvent(ApplicationEvent event)
void
setApplicationContext(ApplicationContext applicationContext)
static void
setNoStart(boolean b)
void
setShutdownEager(boolean shutdownEager)
static SpringCamelContext
springCamelContext(ApplicationContext applicationContext, boolean maybeStart)
Deprecated.its better to create and boot Spring the standard Spring way and to get hold of CamelContext using the Spring API.void
start()
void
stop()
String
toString()
-
Methods inherited from class org.apache.camel.impl.DefaultCamelContext
addFaultToleranceConfiguration, addHystrixConfiguration, addResilience4jConfiguration, addRestDefinitions, addRouteDefinition, addRouteDefinitions, addServiceCallConfiguration, adviceWith, bindDataFormats, createErrorHandler, createExecutorServiceManager, createExpression, createPredicate, doStartStandardServices, getDataFormats, getFaultToleranceConfiguration, getHystrixConfiguration, getProcessorDefinition, getProcessorDefinition, getResilience4jConfiguration, getRestDefinitions, getRouteDefinition, getRouteDefinitions, getRouteFilter, getServiceCallConfiguration, getTransformers, getValidators, isStreamCachingInUse, registerTransformer, registerValidator, removeRouteDefinition, removeRouteDefinitions, resolveDataFormatDefinition, setDataFormats, setFaultToleranceConfiguration, setFaultToleranceConfigurations, setHystrixConfiguration, setHystrixConfigurations, setResilience4jConfiguration, setResilience4jConfigurations, setRouteFilter, setRouteFilterPattern, setServiceCallConfiguration, setServiceCallConfigurations, setTransformers, setValidators, shutdownRouteService, startRouteDefinitions, startRouteDefinitions
-
Methods inherited from class org.apache.camel.impl.engine.SimpleCamelContext
createAsyncProcessorAwaitManager, createBeanIntrospection, createBeanPostProcessor, createBeanProcessorFactory, createBeanProxyFactory, createCamelContextNameStrategy, createClassResolver, createComponentNameResolver, createComponentResolver, createConfigurerResolver, createDataFormatResolver, createEndpointRegistry, createFactoryFinderResolver, createHeadersMapFactory, createHealthCheckRegistry, createInflightRepository, createLanguageResolver, createManagementNameStrategy, createMessageHistoryFactory, createModelToXMLDumper, createMulticast, createNodeIdFactory, createPackageScanClassResolver, createPackageScanResourceResolver, createProcessorFactory, createPropertiesComponent, createReactiveExecutor, createRestBindingJaxbDataFormatFactory, createRestRegistryFactory, createRouteController, createRuntimeCamelCatalog, createShutdownStrategy, createStreamCachingStrategy, createTracer, createTransformerRegistry, createTypeConverter, createTypeConverterRegistry, createUnitOfWorkFactory, createUuidGenerator, createValidatorRegistry, createXMLRoutesDefinitionLoader
-
Methods inherited from class org.apache.camel.impl.engine.AbstractCamelContext
adapt, addComponent, addEndpoint, addEndpointToRegistry, addInterceptStrategy, addLifecycleStrategy, addLogListener, addPrototypeService, addRoute, addRoutePolicyFactory, addRoutes, addService, addService, addService, addStartupListener, close, createConsumerTemplate, createConsumerTemplate, createDataFormat, createEndpoint, createErrorHandlerExecutorService, createFactoryFinder, createFluentProducerTemplate, createFluentProducerTemplate, createProducerTemplate, createProducerTemplate, createRestConfiguration, createRestRegistry, deferStartService, deferStartService, disableJMX, doAddService, doAddService, doAddService, doBuild, doGetEndpoint, doGetEndpoint, doInit, doLifecycleChange, doResume, doShutdownRoute, doStart, doStartCamel, doStartContext, doStartEagerServices, doStop, doSuspend, eagerCreateTypeConverter, forceLazyInitialization, forceStopLazyInitialization, getAnnotationBasedProcessorFactory, getApplicationContextClassLoader, getAsyncProcessorAwaitManager, getBeanIntrospection, getBeanPostProcessor, getBeanProcessorFactory, getBeanProxyFactory, getCamelContextReference, getClassResolver, getComponent, getComponent, getComponent, getComponent, getComponentNameResolver, getComponentNames, getComponentParameterJsonSchema, getComponentResolver, getConfigurerResolver, getDataFormatParameterJsonSchema, getDataFormatResolver, getDebugger, getDefaultFactoryFinder, getDeferServiceFactory, getDelayer, getEipParameterJsonSchema, getEndpoint, getEndpoint, getEndpoint, getEndpoint, getEndpoint, getEndpointKey, getEndpointKey, getEndpointKeyPreNormalized, getEndpointMap, getEndpointRegistry, getEndpoints, getErrorHandlerExecutorService, getErrorHandlerFactory, getExecutorServiceManager, getExtension, getFactoryFinder, getFactoryFinderResolver, getGlobalEndpointConfiguration, getGlobalOption, getGlobalOptions, getHeadersMapFactory, getInflightRepository, getInitialization, getInjector, getInterceptStrategies, getInternalRouteController, getLanguageNames, getLanguageParameterJsonSchema, getLanguageResolver, getLifecycleStrategies, getLogListeners, getManagementMBeanAssembler, getManagementName, getManagementNameStrategy, getManagementStrategy, getMDCLoggingKeysPattern, getMessageHistoryFactory, getModelJAXBContextFactory, getModelToXMLDumper, getName, getNameStrategy, getNodeIdFactory, getOrCreateTypeConverter, getPackageScanClassResolver, getPackageScanResourceResolver, getProcessor, getProcessor, getProcessorFactory, getPropertiesComponent, getPrototypeEndpoint, getPrototypeEndpoint, getReactiveExecutor, getRegistry, getRegistry, getRestBindingJaxbDataFormatFactory, getRestConfiguration, getRestRegistry, getRestRegistryFactory, getRoute, getRouteController, getRoutePolicyFactories, getRoutes, getRouteServices, getRoutesSize, getRouteStartupOrder, getRouteStatus, getRuntimeCamelCatalog, getRuntimeEndpointRegistry, getShutdownRoute, getShutdownRunningTask, getShutdownStrategy, getSSLContextParameters, getStartDate, getStartupListeners, getStreamCachingStrategy, getTracer, getTracingPattern, getTransformerRegistry, getTypeConverter, getTypeConverterRegistry, getUnitOfWorkFactory, getUptime, getUptimeMillis, getUuidGenerator, getValidatorRegistry, getVersion, getXMLRoutesDefinitionLoader, hasComponent, hasEndpoint, hasEndpoint, hasService, hasService, hasServices, init, initEagerMandatoryServices, isAllowUseOriginalMessage, isAutoCreateComponents, isAutoStartup, isBacklogTracing, isCaseInsensitiveHeaders, isDebugging, isEventNotificationApplicable, isJMXDisabled, isLoadTypeConverters, isLogExhaustedMessageBody, isLogMask, isMessageHistory, isSetupRoutes, isStartingRoutes, isStreamCaching, isTracing, isTypeConverterStatisticsEnabled, isUseBreadcrumb, isUseDataType, isUseMDCLogging, isVetoStarted, logRouteState, lookup, normalizeUri, registerEndpointCallback, removeComponent, removeEndpoint, removeEndpoints, removeRoute, removeRoute, removeService, resolveComponent, resolveDataFormat, resolveLanguage, resolvePropertyPlaceholders, resolveTransformer, resolveTransformer, resolveValidator, resumeRoute, resumeRouteService, routeSupportsSuspension, setAllowUseOriginalMessage, setApplicationContextClassLoader, setAsyncProcessorAwaitManager, setAutoCreateComponents, setAutoStartup, setBacklogTracing, setBeanIntrospection, setBeanPostProcessor, setBeanProcessorFactory, setBeanProxyFactory, setCaseInsensitiveHeaders, setClassResolver, setComponentNameResolver, setComponentResolver, setConfigurerResolver, setContextCounter, setDataFormatResolver, setDebugger, setDebugging, setDefaultExtension, setDelayer, setErrorHandlerExecutorService, setErrorHandlerFactory, setEventNotificationApplicable, setExecutorServiceManager, setExtension, setFactoryFinderResolver, setGlobalOptions, setHeadersMapFactory, setInflightRepository, setInitialization, setInjector, setInterceptStrategies, setLanguageResolver, setLoadTypeConverters, setLogExhaustedMessageBody, setLogMask, setManagementMBeanAssembler, setManagementName, setManagementNameStrategy, setManagementStrategy, setMDCLoggingKeysPattern, setMessageHistory, setMessageHistoryFactory, setModelJAXBContextFactory, setModelToXMLDumper, setName, setNameStrategy, setNodeIdFactory, setPackageScanClassResolver, setPackageScanResourceResolver, setProcessorFactory, setPropertiesComponent, setReactiveExecutor, setRegistry, setRestBindingJaxbDataFormatFactory, setRestConfiguration, setRestRegistry, setRestRegistryFactory, setRouteController, setRoutePolicyFactories, setRuntimeCamelCatalog, setRuntimeEndpointRegistry, setShutdownRoute, setShutdownRunningTask, setShutdownStrategy, setSSLContextParameters, setStartingRoutes, setStreamCaching, setStreamCachingStrategy, setTracer, setTracing, setTracingPattern, setTransformerRegistry, setTypeConverter, setTypeConverterRegistry, setTypeConverterStatisticsEnabled, setUnitOfWorkFactory, setupManagement, setupRoutes, setUseBreadcrumb, setUseDataType, setUseMDCLogging, setUuidGenerator, setValidatorRegistry, setXMLRoutesDefinitionLoader, shouldStartRoutes, startAllRoutes, startRoute, startRouteService, stopRoute, stopRoute, stopRoute, stopRouteService, stopRouteService, suspendRoute, suspendRoute, suspendRouteService
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doFail, doShutdown, fail, getStatus, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.camel.CamelContext
adapt, addComponent, addEndpoint, addLifecycleStrategy, addPrototypeService, addRoutePolicyFactory, addRoutes, addService, addService, addService, addStartupListener, createConsumerTemplate, createConsumerTemplate, createDataFormat, createFluentProducerTemplate, createFluentProducerTemplate, createProducerTemplate, createProducerTemplate, deferStartService, disableJMX, getApplicationContextClassLoader, getClassResolver, getComponent, getComponent, getComponent, getComponent, getComponentNames, getDebugger, getEndpoint, getEndpoint, getEndpoint, getEndpointMap, getEndpointRegistry, getEndpoints, getExecutorServiceManager, getExtension, getGlobalEndpointConfiguration, getGlobalOption, getGlobalOptions, getInflightRepository, getInjector, getLanguageNames, getLifecycleStrategies, getManagementName, getManagementNameStrategy, getManagementStrategy, getMDCLoggingKeysPattern, getMessageHistoryFactory, getName, getNameStrategy, getProcessor, getProcessor, getPropertiesComponent, getRegistry, getRegistry, getRestConfiguration, getRestRegistry, getRoute, getRouteController, getRoutePolicyFactories, getRoutes, getRoutesSize, getRuntimeEndpointRegistry, getShutdownStrategy, getSSLContextParameters, getStartDate, getStreamCachingStrategy, getTracer, getTransformerRegistry, getTypeConverter, getTypeConverterRegistry, getUptime, getUptimeMillis, getUuidGenerator, getValidatorRegistry, getVersion, hasComponent, hasEndpoint, hasService, hasService, hasServices, isLoadTypeConverters, isTypeConverterStatisticsEnabled, isUseBreadcrumb, isUseDataType, isUseMDCLogging, isVetoStarted, removeComponent, removeEndpoint, removeEndpoints, removeRoute, removeService, resolveDataFormat, resolveLanguage, resolvePropertyPlaceholders, resolveTransformer, resolveTransformer, resolveValidator, setApplicationContextClassLoader, setClassResolver, setDebugger, setExecutorServiceManager, setExtension, setGlobalOptions, setInflightRepository, setInjector, setLoadTypeConverters, setManagementName, setManagementNameStrategy, setManagementStrategy, setMDCLoggingKeysPattern, setMessageHistoryFactory, setNameStrategy, setPropertiesComponent, setRestConfiguration, setRestRegistry, setRouteController, setRuntimeEndpointRegistry, setShutdownStrategy, setSSLContextParameters, setStreamCachingStrategy, setTracer, setTypeConverterRegistry, setTypeConverterStatisticsEnabled, setUseBreadcrumb, setUseDataType, setUseMDCLogging, setUuidGenerator
-
Methods inherited from interface org.apache.camel.CamelContextLifecycle
build, close, getStatus, init, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, resume, shutdown, suspend
-
Methods inherited from interface org.apache.camel.RuntimeConfiguration
getDelayer, getShutdownRoute, getShutdownRunningTask, getTracingPattern, isAllowUseOriginalMessage, isAutoStartup, isBacklogTracing, isCaseInsensitiveHeaders, isDebugging, isLogExhaustedMessageBody, isLogMask, isMessageHistory, isStreamCaching, isTracing, setAllowUseOriginalMessage, setAutoStartup, setBacklogTracing, setCaseInsensitiveHeaders, setDebugging, setDelayer, setLogExhaustedMessageBody, setLogMask, setMessageHistory, setShutdownRoute, setShutdownRunningTask, setStreamCaching, setTracing, setTracingPattern
-
-
-
-
Constructor Detail
-
SpringCamelContext
public SpringCamelContext()
-
SpringCamelContext
public SpringCamelContext(ApplicationContext applicationContext)
-
-
Method Detail
-
setNoStart
public static void setNoStart(boolean b)
-
springCamelContext
@Deprecated public static SpringCamelContext springCamelContext(ApplicationContext applicationContext, boolean maybeStart) throws Exception
Deprecated.its better to create and boot Spring the standard Spring way and to get hold of CamelContext using the Spring API.- Throws:
Exception
-
start
public void start()
-
stop
public void stop()
-
onApplicationEvent
public void onApplicationEvent(ApplicationEvent event)
- Specified by:
onApplicationEvent
in interfaceApplicationListener<ApplicationEvent>
-
getApplicationContext
public ApplicationContext getApplicationContext()
-
setApplicationContext
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException
- Specified by:
setApplicationContext
in interfaceApplicationContextAware
- Throws:
BeansException
-
isShutdownEager
public boolean isShutdownEager()
Whether to shutdown thisSpringCamelContext
eager (first) when SpringApplicationContext
is being stopped. Important: This option is default true which ensures we shutdown Camel before other beans. Setting this to false restores old behavior in earlier Camel releases, which can be used for special cases to behave as before.- Returns:
- true to shutdown eager (first), false to shutdown last
-
setShutdownEager
public void setShutdownEager(boolean shutdownEager)
- See Also:
isShutdownEager()
-
createInjector
protected org.apache.camel.spi.Injector createInjector()
- Overrides:
createInjector
in classorg.apache.camel.impl.engine.SimpleCamelContext
-
createEventEndpoint
protected EventEndpoint createEventEndpoint()
-
convertBeanToEndpoint
protected org.apache.camel.Endpoint convertBeanToEndpoint(String uri, Object bean)
- Overrides:
convertBeanToEndpoint
in classorg.apache.camel.impl.engine.AbstractCamelContext
-
createRegistry
protected org.apache.camel.spi.Registry createRegistry()
- Overrides:
createRegistry
in classorg.apache.camel.impl.engine.SimpleCamelContext
-
createModelJAXBContextFactory
protected org.apache.camel.spi.ModelJAXBContextFactory createModelJAXBContextFactory()
- Overrides:
createModelJAXBContextFactory
in classorg.apache.camel.impl.engine.SimpleCamelContext
-
toString
public String toString()
- Overrides:
toString
in classorg.apache.camel.impl.engine.AbstractCamelContext
-
-