org.apache.camel.component.stax
Class StAXJAXBIteratorExpression<T>

java.lang.Object
  extended by org.apache.camel.support.ExpressionSupport
      extended by org.apache.camel.support.ExpressionAdapter
          extended by org.apache.camel.component.stax.StAXJAXBIteratorExpression<T>
All Implemented Interfaces:
org.apache.camel.Expression, org.apache.camel.Predicate

public class StAXJAXBIteratorExpression<T>
extends org.apache.camel.support.ExpressionAdapter

Expression to walk a Message body using an Iterator, which uses StAX to walk in streaming mode. The elements returned is a POJO which is bound using JAXB annotations.

The message body must be able to convert to XMLEventReader type which is used as stream to access the message body. And there must be a JAXB annotated class to use as binding.


Constructor Summary
StAXJAXBIteratorExpression(Class<T> handled)
          Creates this expression.
StAXJAXBIteratorExpression(Class<T> handled, boolean isNamespaceAware)
          Creates this expression.
StAXJAXBIteratorExpression(String handledName)
          Creates this expression.
StAXJAXBIteratorExpression(String handledName, boolean isNamespaceAware)
          Creates this expression.
 
Method Summary
 Object evaluate(org.apache.camel.Exchange exchange)
           
 
Methods inherited from class org.apache.camel.support.ExpressionAdapter
assertionFailureMessage, evaluate
 
Methods inherited from class org.apache.camel.support.ExpressionSupport
assertMatches, matches
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StAXJAXBIteratorExpression

public StAXJAXBIteratorExpression(Class<T> handled)
Creates this expression.

Parameters:
handled - the class which has JAXB annotations to bind POJO.

StAXJAXBIteratorExpression

public StAXJAXBIteratorExpression(Class<T> handled,
                                  boolean isNamespaceAware)
Creates this expression.

Parameters:
handled - the class which has JAXB annotations to bind POJO.
isNamespaceAware - sets the namespace awareness of the xml reader

StAXJAXBIteratorExpression

public StAXJAXBIteratorExpression(String handledName)
Creates this expression.

Parameters:
handledName - the FQN name of the class which has JAXB annotations to bind POJO.

StAXJAXBIteratorExpression

public StAXJAXBIteratorExpression(String handledName,
                                  boolean isNamespaceAware)
Creates this expression.

Parameters:
handledName - the FQN name of the class which has JAXB annotations to bind POJO.
isNamespaceAware - sets the namespace awareness of the xml reader
Method Detail

evaluate

public Object evaluate(org.apache.camel.Exchange exchange)
Overrides:
evaluate in class org.apache.camel.support.ExpressionSupport


Apache Camel