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.FluentProducerTemplate
This 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.
-
Field Summary
Fields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDING
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<T> Future
<T> asyncRequest
(Class<T> type) Future
<org.apache.camel.Exchange> void
cleanUp()
protected void
doInit()
protected void
protected void
doStart()
protected void
doStop()
org.apache.camel.CamelContext
int
org.apache.camel.Endpoint
int
boolean
static org.apache.camel.FluentProducerTemplate
on
(org.apache.camel.CamelContext context) Create the FluentProducerTemplate by setting the camel contextstatic org.apache.camel.FluentProducerTemplate
Create the FluentProducerTemplate by setting the camel context and default endpointstatic 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 endpointstatic 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 endpointrequest()
<T> T
org.apache.camel.Exchange
send()
void
setDefaultEndpoint
(org.apache.camel.Endpoint defaultEndpoint) void
setDefaultEndpointUri
(String endpointUri) void
setEventNotifierEnabled
(boolean eventNotifierEnabled) void
setMaximumCacheSize
(int maximumCacheSize) org.apache.camel.FluentProducerTemplate
org.apache.camel.FluentProducerTemplate
to
(org.apache.camel.Endpoint endpoint) org.apache.camel.FluentProducerTemplate
org.apache.camel.FluentProducerTemplate
withBodyAs
(Object body, Class<?> type) org.apache.camel.FluentProducerTemplate
withDefaultEndpoint
(String endpointUri) org.apache.camel.FluentProducerTemplate
withDefaultEndpoint
(org.apache.camel.Endpoint endpoint) org.apache.camel.FluentProducerTemplate
withDefaultEndpoint
(org.apache.camel.EndpointProducerResolver resolver) org.apache.camel.FluentProducerTemplate
withExchange
(Supplier<org.apache.camel.Exchange> exchangeSupplier) org.apache.camel.FluentProducerTemplate
withExchange
(org.apache.camel.Exchange exchange) org.apache.camel.FluentProducerTemplate
withExchangeProperties
(Map<String, Object> properties) org.apache.camel.FluentProducerTemplate
withExchangeProperty
(String key, Object value) org.apache.camel.FluentProducerTemplate
withHeader
(String key, Object value) org.apache.camel.FluentProducerTemplate
withHeaders
(Map<String, Object> headers) org.apache.camel.FluentProducerTemplate
withProcessor
(Supplier<org.apache.camel.Processor> processorSupplier) org.apache.camel.FluentProducerTemplate
withProcessor
(org.apache.camel.Processor processor) org.apache.camel.FluentProducerTemplate
withTemplateCustomizer
(Consumer<org.apache.camel.ProducerTemplate> templateCustomizer) org.apache.camel.FluentProducerTemplate
withVariable
(String key, Object value) org.apache.camel.FluentProducerTemplate
withVariables
(Map<String, Object> variables) 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
Methods inherited from interface org.apache.camel.FluentProducerTemplate
to, toF
Methods inherited from interface org.apache.camel.Service
build, close, init, start, stop
Methods inherited from interface org.apache.camel.ShutdownableService
shutdown
Methods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspending
Methods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
-
Constructor Details
-
DefaultFluentProducerTemplate
public DefaultFluentProducerTemplate(org.apache.camel.CamelContext context)
-
-
Method Details
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()- Specified by:
getCamelContext
in interfaceorg.apache.camel.FluentProducerTemplate
-
getCurrentCacheSize
public int getCurrentCacheSize()- Specified by:
getCurrentCacheSize
in interfaceorg.apache.camel.FluentProducerTemplate
-
cleanUp
public void cleanUp()- Specified by:
cleanUp
in interfaceorg.apache.camel.FluentProducerTemplate
-
setDefaultEndpointUri
- Specified by:
setDefaultEndpointUri
in interfaceorg.apache.camel.FluentProducerTemplate
-
getDefaultEndpoint
public org.apache.camel.Endpoint getDefaultEndpoint()- Specified by:
getDefaultEndpoint
in interfaceorg.apache.camel.FluentProducerTemplate
-
setDefaultEndpoint
public void setDefaultEndpoint(org.apache.camel.Endpoint defaultEndpoint) - Specified by:
setDefaultEndpoint
in interfaceorg.apache.camel.FluentProducerTemplate
-
getMaximumCacheSize
public int getMaximumCacheSize()- Specified by:
getMaximumCacheSize
in interfaceorg.apache.camel.FluentProducerTemplate
-
setMaximumCacheSize
public void setMaximumCacheSize(int maximumCacheSize) - Specified by:
setMaximumCacheSize
in interfaceorg.apache.camel.FluentProducerTemplate
-
isEventNotifierEnabled
public boolean isEventNotifierEnabled()- Specified by:
isEventNotifierEnabled
in interfaceorg.apache.camel.FluentProducerTemplate
-
setEventNotifierEnabled
public void setEventNotifierEnabled(boolean eventNotifierEnabled) - Specified by:
setEventNotifierEnabled
in interfaceorg.apache.camel.FluentProducerTemplate
-
withHeaders
- Specified by:
withHeaders
in interfaceorg.apache.camel.FluentProducerTemplate
-
withHeader
- Specified by:
withHeader
in interfaceorg.apache.camel.FluentProducerTemplate
-
withExchangeProperties
public org.apache.camel.FluentProducerTemplate withExchangeProperties(Map<String, Object> properties) - Specified by:
withExchangeProperties
in interfaceorg.apache.camel.FluentProducerTemplate
-
withExchangeProperty
- Specified by:
withExchangeProperty
in interfaceorg.apache.camel.FluentProducerTemplate
-
withVariables
- Specified by:
withVariables
in interfaceorg.apache.camel.FluentProducerTemplate
-
withVariable
- Specified by:
withVariable
in interfaceorg.apache.camel.FluentProducerTemplate
-
withBody
- Specified by:
withBody
in interfaceorg.apache.camel.FluentProducerTemplate
-
withBodyAs
- Specified by:
withBodyAs
in interfaceorg.apache.camel.FluentProducerTemplate
-
withDefaultEndpoint
- Specified by:
withDefaultEndpoint
in interfaceorg.apache.camel.FluentProducerTemplate
-
withDefaultEndpoint
public org.apache.camel.FluentProducerTemplate withDefaultEndpoint(org.apache.camel.EndpointProducerResolver resolver) - Specified by:
withDefaultEndpoint
in interfaceorg.apache.camel.FluentProducerTemplate
-
withDefaultEndpoint
public org.apache.camel.FluentProducerTemplate withDefaultEndpoint(org.apache.camel.Endpoint endpoint) - Specified by:
withDefaultEndpoint
in interfaceorg.apache.camel.FluentProducerTemplate
-
withTemplateCustomizer
public org.apache.camel.FluentProducerTemplate withTemplateCustomizer(Consumer<org.apache.camel.ProducerTemplate> templateCustomizer) - Specified by:
withTemplateCustomizer
in interfaceorg.apache.camel.FluentProducerTemplate
-
withExchange
public org.apache.camel.FluentProducerTemplate withExchange(org.apache.camel.Exchange exchange) - Specified by:
withExchange
in interfaceorg.apache.camel.FluentProducerTemplate
-
withExchange
public org.apache.camel.FluentProducerTemplate withExchange(Supplier<org.apache.camel.Exchange> exchangeSupplier) - Specified by:
withExchange
in interfaceorg.apache.camel.FluentProducerTemplate
-
withProcessor
public org.apache.camel.FluentProducerTemplate withProcessor(org.apache.camel.Processor processor) - Specified by:
withProcessor
in interfaceorg.apache.camel.FluentProducerTemplate
-
withProcessor
public org.apache.camel.FluentProducerTemplate withProcessor(Supplier<org.apache.camel.Processor> processorSupplier) - Specified by:
withProcessor
in interfaceorg.apache.camel.FluentProducerTemplate
-
to
- Specified by:
to
in interfaceorg.apache.camel.FluentProducerTemplate
-
to
public org.apache.camel.FluentProducerTemplate to(org.apache.camel.Endpoint endpoint) - Specified by:
to
in interfaceorg.apache.camel.FluentProducerTemplate
-
request
- Specified by:
request
in interfaceorg.apache.camel.FluentProducerTemplate
- Throws:
org.apache.camel.CamelExecutionException
-
request
- Specified by:
request
in interfaceorg.apache.camel.FluentProducerTemplate
- Throws:
org.apache.camel.CamelExecutionException
-
asyncRequest
- Specified by:
asyncRequest
in interfaceorg.apache.camel.FluentProducerTemplate
-
asyncRequest
- Specified by:
asyncRequest
in interfaceorg.apache.camel.FluentProducerTemplate
-
send
public org.apache.camel.Exchange send() throws org.apache.camel.CamelExecutionException- Specified by:
send
in interfaceorg.apache.camel.FluentProducerTemplate
- Throws:
org.apache.camel.CamelExecutionException
-
asyncSend
- Specified by:
asyncSend
in 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
- Overrides:
doInit
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
doStart
- Overrides:
doStart
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
doStop
- Overrides:
doStop
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
doShutdown
- Overrides:
doShutdown
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-