org.apache.camel.spi
Interface TracedRouteNodes

All Known Implementing Classes:
DefaultTracedRouteNodes

public interface TracedRouteNodes

Tracing information used by TraceInterceptor so we can trace the exact route path a given Exchange has been processed.

Version:

Method Summary
 void addTraced(RouteNode entry)
          Adds the entry that was intercepted
 void clear()
          Clears all traced information
 int getAndIncrementCounter(ProcessorDefinition<?> node)
          A private counter that increments, is used to as book keeping how far this exchange have been intercepted by the general intercept().
 RouteNode getLastNode()
          Gets the last node, is null if no last exists.
 List<RouteNode> getNodes()
          Gets the current list of nodes, representing the route path the current Exchange has currently taken.
 RouteNode getSecondLastNode()
          Gets the 2nd last node, is null if no last exists.
 void popBlock()
          Pops the last block from tracing.
 void pushBlock()
          Prepares a new block for tracing.
 

Method Detail

addTraced

void addTraced(RouteNode entry)
Adds the entry that was intercepted

Parameters:
entry - the entry

getLastNode

RouteNode getLastNode()
Gets the last node, is null if no last exists.

Returns:
the last node

getSecondLastNode

RouteNode getSecondLastNode()
Gets the 2nd last node, is null if no last exists.

Returns:
the 2nd last

getNodes

List<RouteNode> getNodes()
Gets the current list of nodes, representing the route path the current Exchange has currently taken.

Returns:
the node path

pushBlock

void pushBlock()
Prepares a new block for tracing.

This is needed when you have child block such as a multicast or aggregator


popBlock

void popBlock()
Pops the last block from tracing.


clear

void clear()
Clears all traced information


getAndIncrementCounter

int getAndIncrementCounter(ProcessorDefinition<?> node)
A private counter that increments, is used to as book keeping how far this exchange have been intercepted by the general intercept().

We need this special book keeping to keep correct order when dealing with concurrent exchanges being routed in the same route path.

Parameters:
node - the intercept node
Returns:
the current count


Apache CAMEL