|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.camel.support.ServiceSupport org.apache.camel.processor.interceptor.DefaultChannel
public class DefaultChannel
DefaultChannel is the default Channel
.
Channel
we can in the future implement better strategies for routing the
Exchange
in the route graph, as we have a Channel
between each and every node
in the graph.
Field Summary |
---|
Fields inherited from class org.apache.camel.support.ServiceSupport |
---|
shutdown, shuttingdown, started, starting, stopped, stopping, suspended, suspending |
Constructor Summary | |
---|---|
DefaultChannel()
|
Method Summary | |
---|---|
void |
addInterceptStrategies(List<InterceptStrategy> strategies)
Adds a list of InterceptStrategy to apply each Exchange before
its routed to the next Processor . |
void |
addInterceptStrategy(InterceptStrategy strategy)
Adds a InterceptStrategy to apply each Exchange before
its routed to the next Processor . |
protected boolean |
continueProcessing(Exchange exchange)
Strategy to determine if we should continue processing the Exchange . |
protected void |
doStart()
Implementations override this method to support customized start/stop. |
protected void |
doStop()
Implementations override this method to support customized start/stop. |
Processor |
getErrorHandler()
Gets the ErrorHandler this Channel uses. |
List<InterceptStrategy> |
getInterceptStrategies()
Gets the list of InterceptStrategy registered to this Channel. |
Processor |
getNextProcessor()
Gets the next Processor to route to (not wrapped) |
Processor |
getOutput()
Gets the wrapped output that at runtime should be delegated to. |
ProcessorDefinition<?> |
getProcessorDefinition()
Gets the definition of the next processor |
RouteContext |
getRouteContext()
Gets the RouteContext |
boolean |
hasInterceptorStrategy(Class<?> type)
|
boolean |
hasNext()
Are there more outputs? |
void |
initChannel(ProcessorDefinition<?> outputDefinition,
RouteContext routeContext)
Initializes the channel. |
List<Processor> |
next()
Next group of outputs |
void |
postInitChannel(ProcessorDefinition<?> outputDefinition,
RouteContext routeContext)
Post initializes the channel. |
void |
process(Exchange exchange)
Processes the message exchange |
boolean |
process(Exchange exchange,
AsyncCallback callback)
Processes the message exchange. |
void |
setChildDefinition(ProcessorDefinition<?> childDefinition)
If the initialized output definition contained outputs (children) then we need to set the child so we can leverage fine grained tracing |
void |
setErrorHandler(Processor errorHandler)
Sets the ErrorHandler this Channel uses. |
void |
setNextProcessor(Processor next)
Sets the processor that the channel should route the Exchange to. |
void |
setOutput(Processor output)
Sets the wrapped output that at runtime should be delegated to. |
String |
toString()
|
Methods inherited from class org.apache.camel.support.ServiceSupport |
---|
doResume, doShutdown, doSuspend, getStatus, getVersion, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspended, isSuspending, resume, shutdown, start, stop, suspend |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public DefaultChannel()
Method Detail |
---|
public List<Processor> next()
Navigate
next
in interface Navigate<Processor>
public boolean hasNext()
Navigate
hasNext
in interface Navigate<Processor>
public void setNextProcessor(Processor next)
Channel
Exchange
to.
setNextProcessor
in interface Channel
next
- the next processorpublic Processor getOutput()
Channel
getOutput
in interface Channel
Exchange
topublic void setOutput(Processor output)
Channel
setOutput
in interface Channel
output
- the output to route the Exchange
topublic Processor getNextProcessor()
Channel
Processor
to route to (not wrapped)
getNextProcessor
in interface Channel
public boolean hasInterceptorStrategy(Class<?> type)
public void setErrorHandler(Processor errorHandler)
Channel
ErrorHandler
this Channel uses.
setErrorHandler
in interface Channel
errorHandler
- the error handlerpublic Processor getErrorHandler()
Channel
ErrorHandler
this Channel uses.
getErrorHandler
in interface Channel
public void addInterceptStrategy(InterceptStrategy strategy)
Channel
InterceptStrategy
to apply each Exchange
before
its routed to the next Processor
.
addInterceptStrategy
in interface Channel
strategy
- the intercept strategypublic void addInterceptStrategies(List<InterceptStrategy> strategies)
Channel
InterceptStrategy
to apply each Exchange
before
its routed to the next Processor
.
addInterceptStrategies
in interface Channel
strategies
- list of strategiespublic List<InterceptStrategy> getInterceptStrategies()
Channel
InterceptStrategy
registered to this Channel.
getInterceptStrategies
in interface Channel
public ProcessorDefinition<?> getProcessorDefinition()
ModelChannel
getProcessorDefinition
in interface ModelChannel
public void setChildDefinition(ProcessorDefinition<?> childDefinition)
ModelChannel
setChildDefinition
in interface ModelChannel
childDefinition
- the childpublic RouteContext getRouteContext()
Channel
RouteContext
getRouteContext
in interface Channel
protected 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()
public void initChannel(ProcessorDefinition<?> outputDefinition, RouteContext routeContext) throws Exception
ModelChannel
initChannel
in interface ModelChannel
outputDefinition
- the route definition the Channel
representsrouteContext
- the route context
Exception
- is thrown if some error occurredpublic void postInitChannel(ProcessorDefinition<?> outputDefinition, RouteContext routeContext) throws Exception
ModelChannel
postInitChannel
in interface ModelChannel
outputDefinition
- the route definition the Channel
representsrouteContext
- the route context
Exception
- is thrown if some error occurredpublic void process(Exchange exchange) throws Exception
Processor
process
in interface Processor
exchange
- the message exchange
Exception
- if an internal processing error has occurred.public boolean process(Exchange exchange, AsyncCallback callback)
AsyncProcessor
Processor.process(org.apache.camel.Exchange)
, but the caller supports having the exchange asynchronously processed.
If there was a failure processing then the caused Exception
would be set on the Exchange
.
process
in interface AsyncProcessor
exchange
- the message exchangecallback
- the AsyncCallback
will be invoked when the processing of the exchange is completed.
If the exchange is completed synchronously, then the callback is also invoked synchronously.
The callback should therefore be careful of starting recursive loop.
AsyncProcessorHelper.process(AsyncProcessor, Exchange, AsyncCallback)
protected boolean continueProcessing(Exchange exchange)
Exchange
.
public String toString()
toString
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |