org.apache.servicemix.eip.support
Class XPathPredicate

java.lang.Object
  extended by org.apache.servicemix.expression.JAXPXPathExpression
      extended by org.apache.servicemix.expression.JAXPBooleanXPathExpression
          extended by org.apache.servicemix.eip.support.XPathPredicate
All Implemented Interfaces:
Predicate, org.apache.servicemix.expression.Expression, org.springframework.beans.factory.InitializingBean

public class XPathPredicate
extends org.apache.servicemix.expression.JAXPBooleanXPathExpression
implements Predicate

A predicate that verify if the xpath expression evaluated on the content of the input message is true or not.

Version:
$Revision: 376451 $
Author:
gnodet

Constructor Summary
XPathPredicate()
           
XPathPredicate(java.lang.String xpath)
           
 
Method Summary
 boolean matches(javax.jbi.messaging.MessageExchange exchange)
           
 void setFactory(javax.xml.xpath.XPathFactory xPathFactory)
          The XPath factory.
 void setFunctionResolver(javax.xml.xpath.XPathFunctionResolver xPathFunctionResolver)
          The function resolver.
 void setNamespaceContext(javax.xml.namespace.NamespaceContext namespaceContext)
          The namespace context to use when evaluating the xpath expression
 void setTransformer(org.apache.servicemix.jbi.jaxp.SourceTransformer sourceTransformer)
           
 void setUseMessageContent(boolean b)
          Ensure re-readability of the content if the expression also needs to access the content.
 void setVariableResolver(org.apache.servicemix.expression.MessageVariableResolver messageVariableResolver)
          The variable resolver.
 void setXPath(java.lang.String s)
          The xpath expression used to evaluate the predicate.
 
Methods inherited from class org.apache.servicemix.expression.JAXPBooleanXPathExpression
evaluate, evaluateXPath
 
Methods inherited from class org.apache.servicemix.expression.JAXPXPathExpression
afterPropertiesSet, enableContentRereadability, evaluate, evaluateXPath, getFactory, getFunctionResolver, getNamespaceContext, getTransformer, getVariableResolver, getXMLNode, getXPath, getXPathExpression, isUseMessageContent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XPathPredicate

public XPathPredicate()

XPathPredicate

public XPathPredicate(java.lang.String xpath)
               throws java.lang.Exception
Throws:
java.lang.Exception
Method Detail

matches

public boolean matches(javax.jbi.messaging.MessageExchange exchange)
Specified by:
matches in interface Predicate

setVariableResolver

public void setVariableResolver(org.apache.servicemix.expression.MessageVariableResolver messageVariableResolver)
The variable resolver. The default one will enable the use of properties on the message, exchange, as well as making system properties and environment properties available.

Overrides:
setVariableResolver in class org.apache.servicemix.expression.JAXPXPathExpression

setUseMessageContent

public void setUseMessageContent(boolean b)
Ensure re-readability of the content if the expression also needs to access the content.

Overrides:
setUseMessageContent in class org.apache.servicemix.expression.JAXPXPathExpression

setXPath

public void setXPath(java.lang.String s)
The xpath expression used to evaluate the predicate.

Overrides:
setXPath in class org.apache.servicemix.expression.JAXPXPathExpression

setTransformer

public void setTransformer(org.apache.servicemix.jbi.jaxp.SourceTransformer sourceTransformer)
Overrides:
setTransformer in class org.apache.servicemix.expression.JAXPXPathExpression

setFactory

public void setFactory(javax.xml.xpath.XPathFactory xPathFactory)
The XPath factory. If no factory is explicitely configured, a defaut one will be created using XPathFactory.newInstance().

Overrides:
setFactory in class org.apache.servicemix.expression.JAXPXPathExpression

setFunctionResolver

public void setFunctionResolver(javax.xml.xpath.XPathFunctionResolver xPathFunctionResolver)
The function resolver.

Overrides:
setFunctionResolver in class org.apache.servicemix.expression.JAXPXPathExpression

setNamespaceContext

public void setNamespaceContext(javax.xml.namespace.NamespaceContext namespaceContext)
The namespace context to use when evaluating the xpath expression

Overrides:
setNamespaceContext in class org.apache.servicemix.expression.JAXPXPathExpression


Copyright © 2005-2011 FuseSource. All Rights Reserved.