Package org.apache.camel.impl.engine
Class DefaultFluentProducerTemplate
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.impl.engine.DefaultFluentProducerTemplate
-
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.FluentProducerTemplate,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.StatefulService,org.apache.camel.SuspendableService
public class DefaultFluentProducerTemplate extends org.apache.camel.support.service.ServiceSupport implements org.apache.camel.FluentProducerTemplateThis implementation is based on the usage pattern, that a top level DefaultFluentProducerTemplate instance is created as singleton and provided to the Camel end user (such as injected into a POJO).The top level instance is then cloned once per message that is being built using the fluent method calls and then reset when the message has been sent.
Each cloned instance is not thread-safe as its assumed that its a single thread that calls the fluent method to build up the message to be sent.
-
-
Constructor Summary
Constructors Constructor Description DefaultFluentProducerTemplate(org.apache.camel.CamelContext context)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Future<Object>asyncRequest()<T> Future<T>asyncRequest(Class<T> type)Future<org.apache.camel.Exchange>asyncSend()voidcleanUp()org.apache.camel.FluentProducerTemplateclearAll()org.apache.camel.FluentProducerTemplateclearBody()org.apache.camel.FluentProducerTemplateclearHeaders()protected voiddoInit()protected voiddoShutdown()protected voiddoStart()protected voiddoStop()org.apache.camel.CamelContextgetCamelContext()intgetCurrentCacheSize()org.apache.camel.EndpointgetDefaultEndpoint()intgetMaximumCacheSize()booleanisEventNotifierEnabled()static org.apache.camel.FluentProducerTemplateon(org.apache.camel.CamelContext context)Create the FluentProducerTemplate by setting the camel contextstatic org.apache.camel.FluentProducerTemplateon(org.apache.camel.CamelContext context, String endpoint)Create the FluentProducerTemplate by setting the camel context and default endpointstatic org.apache.camel.FluentProducerTemplateon(org.apache.camel.CamelContext context, org.apache.camel.Endpoint endpoint)Create the FluentProducerTemplate by setting the camel context and default endpointstatic org.apache.camel.FluentProducerTemplateon(org.apache.camel.CamelContext context, org.apache.camel.EndpointProducerResolver resolver)Create the FluentProducerTemplate by setting the camel context and default endpointObjectrequest()<T> Trequest(Class<T> type)org.apache.camel.Exchangesend()voidsetDefaultEndpoint(org.apache.camel.Endpoint defaultEndpoint)voidsetDefaultEndpointUri(String endpointUri)voidsetEventNotifierEnabled(boolean eventNotifierEnabled)voidsetMaximumCacheSize(int maximumCacheSize)org.apache.camel.FluentProducerTemplateto(String endpointUri)org.apache.camel.FluentProducerTemplateto(org.apache.camel.Endpoint endpoint)org.apache.camel.FluentProducerTemplatewithBody(Object body)org.apache.camel.FluentProducerTemplatewithBodyAs(Object body, Class<?> type)org.apache.camel.FluentProducerTemplatewithDefaultEndpoint(String endpointUri)org.apache.camel.FluentProducerTemplatewithDefaultEndpoint(org.apache.camel.Endpoint endpoint)org.apache.camel.FluentProducerTemplatewithDefaultEndpoint(org.apache.camel.EndpointProducerResolver resolver)org.apache.camel.FluentProducerTemplatewithExchange(Supplier<org.apache.camel.Exchange> exchangeSupplier)org.apache.camel.FluentProducerTemplatewithExchange(org.apache.camel.Exchange exchange)org.apache.camel.FluentProducerTemplatewithHeader(String key, Object value)org.apache.camel.FluentProducerTemplatewithHeaders(Map<String,Object> headers)org.apache.camel.FluentProducerTemplatewithProcessor(Supplier<org.apache.camel.Processor> processorSupplier)org.apache.camel.FluentProducerTemplatewithProcessor(org.apache.camel.Processor processor)org.apache.camel.FluentProducerTemplatewithTemplateCustomizer(Consumer<org.apache.camel.ProducerTemplate> templateCustomizer)-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doLifecycleChange, doResume, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Method Detail
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()
- Specified by:
getCamelContextin interfaceorg.apache.camel.FluentProducerTemplate
-
getCurrentCacheSize
public int getCurrentCacheSize()
- Specified by:
getCurrentCacheSizein interfaceorg.apache.camel.FluentProducerTemplate
-
cleanUp
public void cleanUp()
- Specified by:
cleanUpin interfaceorg.apache.camel.FluentProducerTemplate
-
setDefaultEndpointUri
public void setDefaultEndpointUri(String endpointUri)
- Specified by:
setDefaultEndpointUriin interfaceorg.apache.camel.FluentProducerTemplate
-
getDefaultEndpoint
public org.apache.camel.Endpoint getDefaultEndpoint()
- Specified by:
getDefaultEndpointin interfaceorg.apache.camel.FluentProducerTemplate
-
setDefaultEndpoint
public void setDefaultEndpoint(org.apache.camel.Endpoint defaultEndpoint)
- Specified by:
setDefaultEndpointin interfaceorg.apache.camel.FluentProducerTemplate
-
getMaximumCacheSize
public int getMaximumCacheSize()
- Specified by:
getMaximumCacheSizein interfaceorg.apache.camel.FluentProducerTemplate
-
setMaximumCacheSize
public void setMaximumCacheSize(int maximumCacheSize)
- Specified by:
setMaximumCacheSizein interfaceorg.apache.camel.FluentProducerTemplate
-
isEventNotifierEnabled
public boolean isEventNotifierEnabled()
- Specified by:
isEventNotifierEnabledin interfaceorg.apache.camel.FluentProducerTemplate
-
setEventNotifierEnabled
public void setEventNotifierEnabled(boolean eventNotifierEnabled)
- Specified by:
setEventNotifierEnabledin interfaceorg.apache.camel.FluentProducerTemplate
-
clearAll
public org.apache.camel.FluentProducerTemplate clearAll()
- Specified by:
clearAllin interfaceorg.apache.camel.FluentProducerTemplate
-
withHeaders
public org.apache.camel.FluentProducerTemplate withHeaders(Map<String,Object> headers)
- Specified by:
withHeadersin interfaceorg.apache.camel.FluentProducerTemplate
-
withHeader
public org.apache.camel.FluentProducerTemplate withHeader(String key, Object value)
- Specified by:
withHeaderin interfaceorg.apache.camel.FluentProducerTemplate
-
clearHeaders
public org.apache.camel.FluentProducerTemplate clearHeaders()
- Specified by:
clearHeadersin interfaceorg.apache.camel.FluentProducerTemplate
-
withBody
public org.apache.camel.FluentProducerTemplate withBody(Object body)
- Specified by:
withBodyin interfaceorg.apache.camel.FluentProducerTemplate
-
withBodyAs
public org.apache.camel.FluentProducerTemplate withBodyAs(Object body, Class<?> type)
- Specified by:
withBodyAsin interfaceorg.apache.camel.FluentProducerTemplate
-
clearBody
public org.apache.camel.FluentProducerTemplate clearBody()
- Specified by:
clearBodyin interfaceorg.apache.camel.FluentProducerTemplate
-
withDefaultEndpoint
public org.apache.camel.FluentProducerTemplate withDefaultEndpoint(String endpointUri)
- Specified by:
withDefaultEndpointin interfaceorg.apache.camel.FluentProducerTemplate
-
withDefaultEndpoint
public org.apache.camel.FluentProducerTemplate withDefaultEndpoint(org.apache.camel.EndpointProducerResolver resolver)
- Specified by:
withDefaultEndpointin interfaceorg.apache.camel.FluentProducerTemplate
-
withDefaultEndpoint
public org.apache.camel.FluentProducerTemplate withDefaultEndpoint(org.apache.camel.Endpoint endpoint)
- Specified by:
withDefaultEndpointin interfaceorg.apache.camel.FluentProducerTemplate
-
withTemplateCustomizer
public org.apache.camel.FluentProducerTemplate withTemplateCustomizer(Consumer<org.apache.camel.ProducerTemplate> templateCustomizer)
- Specified by:
withTemplateCustomizerin interfaceorg.apache.camel.FluentProducerTemplate
-
withExchange
public org.apache.camel.FluentProducerTemplate withExchange(org.apache.camel.Exchange exchange)
- Specified by:
withExchangein interfaceorg.apache.camel.FluentProducerTemplate
-
withExchange
public org.apache.camel.FluentProducerTemplate withExchange(Supplier<org.apache.camel.Exchange> exchangeSupplier)
- Specified by:
withExchangein interfaceorg.apache.camel.FluentProducerTemplate
-
withProcessor
public org.apache.camel.FluentProducerTemplate withProcessor(org.apache.camel.Processor processor)
- Specified by:
withProcessorin interfaceorg.apache.camel.FluentProducerTemplate
-
withProcessor
public org.apache.camel.FluentProducerTemplate withProcessor(Supplier<org.apache.camel.Processor> processorSupplier)
- Specified by:
withProcessorin interfaceorg.apache.camel.FluentProducerTemplate
-
to
public org.apache.camel.FluentProducerTemplate to(String endpointUri)
- Specified by:
toin interfaceorg.apache.camel.FluentProducerTemplate
-
to
public org.apache.camel.FluentProducerTemplate to(org.apache.camel.Endpoint endpoint)
- Specified by:
toin interfaceorg.apache.camel.FluentProducerTemplate
-
request
public Object request() throws org.apache.camel.CamelExecutionException
- Specified by:
requestin interfaceorg.apache.camel.FluentProducerTemplate- Throws:
org.apache.camel.CamelExecutionException
-
request
public <T> T request(Class<T> type) throws org.apache.camel.CamelExecutionException
- Specified by:
requestin interfaceorg.apache.camel.FluentProducerTemplate- Throws:
org.apache.camel.CamelExecutionException
-
asyncRequest
public Future<Object> asyncRequest()
- Specified by:
asyncRequestin interfaceorg.apache.camel.FluentProducerTemplate
-
asyncRequest
public <T> Future<T> asyncRequest(Class<T> type)
- Specified by:
asyncRequestin interfaceorg.apache.camel.FluentProducerTemplate
-
send
public org.apache.camel.Exchange send() throws org.apache.camel.CamelExecutionException- Specified by:
sendin interfaceorg.apache.camel.FluentProducerTemplate- Throws:
org.apache.camel.CamelExecutionException
-
asyncSend
public Future<org.apache.camel.Exchange> asyncSend()
- Specified by:
asyncSendin interfaceorg.apache.camel.FluentProducerTemplate
-
on
public static org.apache.camel.FluentProducerTemplate on(org.apache.camel.CamelContext context)
Create the FluentProducerTemplate by setting the camel context- Parameters:
context- the camel context- Returns:
- a new created instance of the fluent producer template
-
on
public static org.apache.camel.FluentProducerTemplate on(org.apache.camel.CamelContext context, org.apache.camel.Endpoint endpoint)Create the FluentProducerTemplate by setting the camel context and default endpoint- Parameters:
context- the camel contextendpoint- the default endpoint- Returns:
- a new created instance of the fluent producer template
-
on
public static org.apache.camel.FluentProducerTemplate on(org.apache.camel.CamelContext context, org.apache.camel.EndpointProducerResolver resolver)Create the FluentProducerTemplate by setting the camel context and default endpoint- Parameters:
context- the camel contextresolver- the default endpoint- Returns:
- a new created instance of the fluent producer template
-
on
public static org.apache.camel.FluentProducerTemplate on(org.apache.camel.CamelContext context, String endpoint)Create the FluentProducerTemplate by setting the camel context and default endpoint- Parameters:
context- the camel contextendpoint- the default endpoint- Returns:
- a new created instance of the fluent producer template
-
doInit
protected void doInit() throws Exception- Overrides:
doInitin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doStart
protected void doStart() throws Exception- Overrides:
doStartin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doStop
protected void doStop() throws Exception- Overrides:
doStopin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
-