Class 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 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