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.model.Model,org.apache.camel.model.ModelCamelContext,org.apache.camel.RuntimeConfiguration,org.apache.camel.Suspendable,org.springframework.beans.factory.Aware,org.springframework.context.ApplicationContextAware,org.springframework.context.ApplicationListener<org.springframework.context.ApplicationEvent>,org.springframework.context.Lifecycle,org.springframework.context.Phased,org.springframework.core.Ordered
public class SpringCamelContext
extends org.apache.camel.impl.DefaultCamelContext
implements org.springframework.context.Lifecycle, org.springframework.context.ApplicationContextAware, org.springframework.context.Phased, org.springframework.context.ApplicationListener<org.springframework.context.ApplicationEvent>, org.springframework.core.Ordered
A Spring aware implementation of
CamelContext 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 Spring ApplicationContext-
Field Summary
FieldsFields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDINGFields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
ConstructorsConstructorDescriptionSpringCamelContext(org.springframework.context.ApplicationContext applicationContext) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.camel.EndpointconvertBeanToEndpoint(String uri, Object bean) protected EventEndpointprotected org.apache.camel.spi.Injectorprotected org.apache.camel.spi.ModelJAXBContextFactoryprotected org.apache.camel.spi.RegistryvoiddoBuild()org.springframework.context.ApplicationContextintgetOrder()intgetPhase()booleanbooleanWhether to shutdown thisSpringCamelContexteager (first) when SpringApplicationContextis being stopped.voidonApplicationEvent(org.springframework.context.ApplicationEvent event) voidsetApplicationContext(org.springframework.context.ApplicationContext applicationContext) voidsetShutdownEager(boolean shutdownEager) static SpringCamelContextspringCamelContext(org.springframework.context.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.voidstart()voidstop()toString()Methods inherited from class org.apache.camel.impl.DefaultCamelContext
addCustomBean, addFaultToleranceConfiguration, addModelLifecycleStrategy, addResilience4jConfiguration, addRestDefinitions, addRouteConfiguration, addRouteConfigurations, addRouteDefinition, addRouteDefinitions, addRouteFromKamelet, addRouteFromKamelet, addRouteFromTemplate, addRouteFromTemplate, addRouteFromTemplate, addRouteFromTemplate, addRouteFromTemplate, addRouteFromTemplatedRoute, addRouteFromTemplatedRoutes, addRouteTemplateDefinition, addRouteTemplateDefinitionConverter, addRouteTemplateDefinitions, addServiceCallConfiguration, bindDataFormats, clearOptions, createErrorHandler, createExecutorServiceManager, createExpression, createModelReifierFactory, createPackageScanClassResolver, createPredicate, doDumpRoutes, doStop, getCustomBeans, getDataFormats, getExcludeRoutes, getFaultToleranceConfiguration, getModelLifecycleStrategies, getModelReifierFactory, getProcessorDefinition, getProcessorDefinition, getResilience4jConfiguration, getRestDefinitions, getRouteConfigurationDefinition, getRouteConfigurationDefinitions, getRouteDefinition, getRouteDefinitions, getRouteFilter, getRouteTemplateDefinition, getRouteTemplateDefinitions, getServiceCallConfiguration, getTestExcludeRoutes, getTransformers, getValidators, isDisableJmx, isNoStart, isStreamCachingInUse, registerTransformer, registerValidator, removeModelLifecycleStrategy, removeRoute, removeRoute, removeRouteConfiguration, removeRouteDefinition, removeRouteDefinitions, removeRouteDefinitionsFromTemplate, removeRouteTemplateDefinition, removeRouteTemplateDefinitions, removeRouteTemplateDefinitions, removeRouteTemplates, resolveDataFormatDefinition, setDataFormats, setDisableJmx, setExcludeRoutes, setFaultToleranceConfiguration, setFaultToleranceConfigurations, setModelReifierFactory, setNoStart, setResilience4jConfiguration, setResilience4jConfigurations, setRouteFilter, setRouteFilterPattern, setServiceCallConfiguration, setServiceCallConfigurations, setTransformers, setValidators, shutdownRouteService, startRouteDefinitions, startRouteDefinitionsMethods inherited from class org.apache.camel.impl.engine.SimpleCamelContext
createAnnotationBasedProcessorFactory, createAsyncProcessorAwaitManager, createBackOffTimerFactory, createBeanIntrospection, createBeanPostProcessor, createBeanProcessorFactory, createBeanProxyFactory, createCamelContextNameStrategy, createClassResolver, createComponentNameResolver, createComponentResolver, createConfigurerResolver, createDataFormatResolver, createDeferServiceFactory, createDependencyInjectionAnnotationFactory, createDevConsoleRegistry, createDevConsoleResolver, createDumpRoutesStrategy, createEndpointRegistry, createEndpointServiceRegistry, createExchangeFactory, createExchangeFactoryManager, createFactoryFinderResolver, createGroovyScriptCompiler, createHeadersMapFactory, createHealthCheckRegistry, createHealthCheckResolver, createInflightRepository, createInterceptEndpointFactory, createInternalProcessorFactory, createLanguageResolver, createManagementNameStrategy, createMessageHistoryFactory, createModelineFactory, createModelToXMLDumper, createModelToYAMLDumper, createNodeIdFactory, createPackageScanResourceResolver, createPeriodTaskResolver, createPeriodTaskScheduler, createProcessorExchangeFactory, createProcessorFactory, createPropertiesComponent, createReactiveExecutor, createResourceLoader, createRestBindingJaxbDataFormatFactory, createRestRegistryFactory, createRouteController, createRouteFactory, createRoutesLoader, createRuntimeCamelCatalog, createShutdownStrategy, createStartupConditionStrategy, createStreamCachingStrategy, createTaskManagerRegistry, createTracer, createTransformerRegistry, createTypeConverter, createTypeConverterRegistry, createUnitOfWorkFactory, createUriFactoryResolver, createUuidGenerator, createValidatorRegistry, createVariableRepositoryFactory, disposeModelMethods inherited from class org.apache.camel.impl.engine.AbstractCamelContext
addComponent, addEndpoint, addEndpointToRegistry, addLifecycleStrategy, addPrototypeService, addRoute, addRoutePolicyFactory, addRoutes, addRoutesConfigurations, addService, addService, addService, addStartupListener, addTemplatedRoutes, close, createBootstrapFactoryFinder, createConsumerTemplate, createConsumerTemplate, createDataFormat, createEndpoint, createErrorHandlerExecutorService, createFactoryFinder, createFluentProducerTemplate, createFluentProducerTemplate, createProducerTemplate, createProducerTemplate, createRestConfiguration, createRestRegistry, deferStartService, disableJMX, doFail, doGetEndpoint, doInit, doLifecycleChange, doResume, doShutdownRoute, doShutdownRouteGroup, doStart, doStartCamel, doStartContext, doStartStandardServices, doSuspend, eagerCreateTypeConverter, failOnStartup, forceLazyInitialization, forceStopLazyInitialization, getApplicationContextClassLoader, getAutoStartupExcludePattern, getCamelContextExtension, getCamelContextReference, getClassResolver, getClock, getComponent, getComponent, getComponent, getComponent, getComponentNames, getComponentParameterJsonSchema, getDataFormatNames, getDataFormatParameterJsonSchema, getDebugger, getDebuggingBreakpoints, getDelayer, getDescription, getDevConsoleParameterJsonSchema, getDumpRoutes, getEipParameterJsonSchema, getEndpoint, getEndpoint, getEndpoint, getEndpointKey, getEndpointKey, getEndpointRegistry, getEndpoints, getExecutorServiceManager, getGlobalEndpointConfiguration, getGlobalOption, getGlobalOptions, getInflightRepository, getInjector, getLanguageNames, getLanguageParameterJsonSchema, getLifecycleStrategies, getLock, getManagementName, getManagementNameStrategy, getManagementStrategy, getMDCLoggingKeysPattern, getMessageHistoryFactory, getName, getNameStrategy, getPojoBeanParameterJsonSchema, getProcessor, getProcessor, getPropertiesComponent, getRegistry, getRegistry, getRestConfiguration, getRestRegistry, getRoute, getRouteController, getRoutePolicyFactories, getRoutes, getRoutes, getRoutesByGroup, getRouteServices, getRoutesSize, getRouteStatus, getRuntimeEndpointRegistry, getShutdownRoute, getShutdownRunningTask, getShutdownStrategy, getSSLContextParameters, getStartupListeners, getStartupSummaryLevel, getStreamCachingStrategy, getTracer, getTracingLoggingFormat, getTracingPattern, getTransformerParameterJsonSchema, getTransformerRegistry, getTypeConverter, getTypeConverterRegistry, getUptime, getUuidGenerator, getValidatorRegistry, getVariable, getVariable, getVaultConfiguration, getVersion, hasComponent, hasEndpoint, hasService, hasService, hasService, hasServices, init, initEagerMandatoryServices, initPlugins, isAllowUseOriginalMessage, isAutoStartup, isAutowiredEnabled, isBacklogTracing, isBacklogTracingRests, isBacklogTracingStandby, isBacklogTracingTemplates, isCaseInsensitiveHeaders, isDebugging, isDebugStandby, isDevConsole, isJMXDisabled, isLoadHealthChecks, isLoadTypeConverters, isLockModel, isLogExhaustedMessageBody, isLogMask, isMessageHistory, isModeline, isSourceLocationEnabled, isStartingRoutes, isStreamCaching, isTracing, isTracingRests, isTracingStandby, isTracingTemplates, isTypeConverterStatisticsEnabled, isUseBreadcrumb, isUseDataType, isUseMDCLogging, isVetoStarted, logDuplicateComponents, logRouteStartSummary, logRouteState, logRouteStopSummary, logStartSummary, lookup, removeAllRoutes, removeComponent, removeEndpoint, removeEndpoints, removeRoute, removeService, resetBuildTime, resolveDataFormat, resolveLanguage, resolvePropertyPlaceholders, resolveTransformer, resolveTransformer, resolveValidator, resumeRoute, resumeRoute, resumeRouteService, routeSupportsSuspension, setAllowUseOriginalMessage, setApplicationContextClassLoader, setAutoCreateComponents, setAutoStartup, setAutoStartupExcludePattern, setAutowiredEnabled, setBacklogTracing, setBacklogTracingRests, setBacklogTracingStandby, setBacklogTracingTemplates, setCaseInsensitiveHeaders, setClassResolver, setDebugger, setDebugging, setDebuggingBreakpoints, setDebugStandby, setDelayer, setDevConsole, setDumpRoutes, setExecutorServiceManager, setGlobalOptions, setInflightRepository, setInjector, setLoadHealthChecks, setLoadTypeConverters, setLockModel, setLogExhaustedMessageBody, setLogMask, setManagementName, setManagementNameStrategy, setManagementStrategy, setMDCLoggingKeysPattern, setMessageHistory, setMessageHistoryFactory, setModeline, setNameStrategy, setPropertiesComponent, setRestConfiguration, setRestRegistry, setRouteController, setRuntimeEndpointRegistry, setShutdownRoute, setShutdownRunningTask, setShutdownStrategy, setSourceLocationEnabled, setSSLContextParameters, setStartingRoutes, setStartupSummaryLevel, setStreamCaching, setStreamCachingStrategy, setTracer, setTracing, setTracingLoggingFormat, setTracingPattern, setTracingRests, setTracingStandby, setTracingTemplates, setTypeConverterRegistry, setTypeConverterStatisticsEnabled, setUseBreadcrumb, setUseDataType, setUseMDCLogging, setUuidGenerator, setVariable, setVaultConfiguration, shouldStartRoutes, shutdownRouteService, startAllRoutes, startRoute, startRoute, startRouteGroup, startRouteService, stopAllRoutes, stopRoute, stopRoute, stopRoute, stopRoute, stopRouteGroup, stopRouteService, stopRouteService, suspendRoute, suspendRoute, suspendRouteServiceMethods inherited from class org.apache.camel.support.service.BaseService
build, doShutdown, fail, getInternalLock, getStatus, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, suspendMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.springframework.context.ApplicationListener
supportsAsyncExecutionMethods inherited from interface org.apache.camel.CamelContext
addComponent, addEndpoint, addLifecycleStrategy, addPrototypeService, addRoutePolicyFactory, addRoutes, addRoutesConfigurations, addService, addService, addService, addStartupListener, addTemplatedRoutes, createConsumerTemplate, createConsumerTemplate, createDataFormat, createFluentProducerTemplate, createFluentProducerTemplate, createProducerTemplate, createProducerTemplate, deferStartService, disableJMX, getApplicationContextClassLoader, getAutoStartupExcludePattern, getCamelContextExtension, getClassResolver, getClock, getComponent, getComponent, getComponent, getComponent, getComponentNames, getDataFormatNames, getDebugger, getDescription, getDumpRoutes, getEndpoint, getEndpoint, getEndpoint, getEndpointRegistry, getEndpoints, getExecutorServiceManager, 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, getRoutes, getRoutesByGroup, getRoutesSize, getRuntimeEndpointRegistry, getShutdownStrategy, getSSLContextParameters, getStartupSummaryLevel, getStreamCachingStrategy, getTracer, getTracingLoggingFormat, getTransformerRegistry, getTypeConverter, getTypeConverterRegistry, getUptime, getUuidGenerator, getValidatorRegistry, getVariable, getVariable, getVaultConfiguration, getVersion, hasComponent, hasEndpoint, hasService, hasService, hasService, hasServices, isBacklogTracingRests, isBacklogTracingStandby, isBacklogTracingTemplates, isDebugStandby, isDevConsole, isLoadHealthChecks, isLoadTypeConverters, isModeline, isSourceLocationEnabled, isTracingRests, isTracingStandby, isTracingTemplates, isTypeConverterStatisticsEnabled, isUseBreadcrumb, isUseDataType, isUseMDCLogging, isVetoStarted, removeComponent, removeEndpoint, removeEndpoints, removeService, resolveDataFormat, resolveLanguage, resolvePropertyPlaceholders, resolveTransformer, resolveTransformer, resolveValidator, setApplicationContextClassLoader, setAutoStartupExcludePattern, setBacklogTracingRests, setBacklogTracingStandby, setBacklogTracingTemplates, setClassResolver, setDebugger, setDebugStandby, setDevConsole, setDumpRoutes, setExecutorServiceManager, setGlobalOptions, setInflightRepository, setInjector, setLoadHealthChecks, setLoadTypeConverters, setManagementName, setManagementNameStrategy, setManagementStrategy, setMDCLoggingKeysPattern, setMessageHistoryFactory, setModeline, setNameStrategy, setPropertiesComponent, setRestConfiguration, setRestRegistry, setRouteController, setRuntimeEndpointRegistry, setShutdownStrategy, setSourceLocationEnabled, setSSLContextParameters, setStartupSummaryLevel, setStreamCachingStrategy, setTracer, setTracingLoggingFormat, setTracingRests, setTracingStandby, setTracingTemplates, setTypeConverterRegistry, setTypeConverterStatisticsEnabled, setUseBreadcrumb, setUseDataType, setUseMDCLogging, setUuidGenerator, setVariable, setVaultConfigurationMethods inherited from interface org.apache.camel.CamelContextLifecycle
build, close, getStatus, init, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, resume, shutdown, suspendMethods inherited from interface org.apache.camel.RuntimeConfiguration
getDelayer, getShutdownRoute, getShutdownRunningTask, getTracingPattern, isAllowUseOriginalMessage, isAutoStartup, isAutowiredEnabled, isBacklogTracing, isCaseInsensitiveHeaders, isDebugging, isLogExhaustedMessageBody, isLogMask, isMessageHistory, isStreamCaching, isTracing, setAllowUseOriginalMessage, setAutoStartup, setAutowiredEnabled, setBacklogTracing, setCaseInsensitiveHeaders, setDebugging, setDelayer, setLogExhaustedMessageBody, setLogMask, setMessageHistory, setShutdownRoute, setShutdownRunningTask, setStreamCaching, setTracing, setTracingPattern
-
Field Details
-
EXCLUDE_ROUTES
- See Also:
-
-
Constructor Details
-
SpringCamelContext
public SpringCamelContext() -
SpringCamelContext
public SpringCamelContext(org.springframework.context.ApplicationContext applicationContext)
-
-
Method Details
-
springCamelContext
@Deprecated public static SpringCamelContext springCamelContext(org.springframework.context.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
-
doBuild
- Overrides:
doBuildin classorg.apache.camel.impl.engine.SimpleCamelContext- Throws:
Exception
-
start
public void start()- Specified by:
startin interfaceorg.apache.camel.CamelContextLifecycle- Specified by:
startin interfaceorg.springframework.context.Lifecycle- Overrides:
startin classorg.apache.camel.impl.DefaultCamelContext
-
stop
public void stop()- Specified by:
stopin interfaceorg.apache.camel.CamelContextLifecycle- Specified by:
stopin interfaceorg.springframework.context.Lifecycle- Overrides:
stopin classorg.apache.camel.impl.engine.AbstractCamelContext
-
onApplicationEvent
public void onApplicationEvent(org.springframework.context.ApplicationEvent event) - Specified by:
onApplicationEventin interfaceorg.springframework.context.ApplicationListener<org.springframework.context.ApplicationEvent>
-
getOrder
public int getOrder()- Specified by:
getOrderin interfaceorg.springframework.core.Ordered
-
getApplicationContext
public org.springframework.context.ApplicationContext getApplicationContext() -
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException - Specified by:
setApplicationContextin interfaceorg.springframework.context.ApplicationContextAware- Throws:
org.springframework.beans.BeansException
-
isShutdownEager
public boolean isShutdownEager()Whether to shutdown thisSpringCamelContexteager (first) when SpringApplicationContextis 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:
-
createInjector
protected org.apache.camel.spi.Injector createInjector()- Overrides:
createInjectorin classorg.apache.camel.impl.engine.SimpleCamelContext
-
createEventEndpoint
-
convertBeanToEndpoint
- Overrides:
convertBeanToEndpointin classorg.apache.camel.impl.engine.AbstractCamelContext
-
createRegistry
protected org.apache.camel.spi.Registry createRegistry()- Overrides:
createRegistryin classorg.apache.camel.impl.engine.SimpleCamelContext
-
createModelJAXBContextFactory
protected org.apache.camel.spi.ModelJAXBContextFactory createModelJAXBContextFactory()- Overrides:
createModelJAXBContextFactoryin classorg.apache.camel.impl.engine.SimpleCamelContext
-
toString
- Overrides:
toStringin classorg.apache.camel.impl.engine.AbstractCamelContext
-
getPhase
public int getPhase()- Specified by:
getPhasein interfaceorg.springframework.context.Phased
-
isRunning
public boolean isRunning()- Specified by:
isRunningin interfaceorg.springframework.context.Lifecycle
-