Search in sources :

Example 26 with JXPathContext

use of org.apache.commons.jxpath.JXPathContext in project vorto by eclipse.

the class AbstractDataMapper method newContext.

private JXPathContext newContext(Object ctxObject) {
    JXPathContext context = JXPathContext.newContext(ctxObject);
    TypeUtils.setTypeConverter(new MyTypeConverter());
    context.setLenient(false);
    return context;
}
Also used : JXPathContext(org.apache.commons.jxpath.JXPathContext)

Example 27 with JXPathContext

use of org.apache.commons.jxpath.JXPathContext in project tesb-rt-se by Talend.

the class JxPathFilter method filter.

/* (non-Javadoc)
     * @see org.talend.esb.sam.common.spi.EventFilter#filter(org.talend.esb.sam.common.event.Event)
     */
@Override
public boolean filter(Event event) {
    JXPathContext context = JXPathContext.newContext(event);
    Pointer pointer = context.getPointer(expression);
    return (Boolean) pointer.getValue();
}
Also used : JXPathContext(org.apache.commons.jxpath.JXPathContext) Pointer(org.apache.commons.jxpath.Pointer)

Example 28 with JXPathContext

use of org.apache.commons.jxpath.JXPathContext in project collect by openforis.

the class AbstractSchemaExpression method evaluate.

public Object evaluate(NodeDefinition context, NodeDefinition thisNode) {
    if (!(Schema.class.isAssignableFrom(context.getClass()) || NodeDefinition.class.isAssignableFrom(context.getClass()))) {
        throw new IllegalArgumentException("Unable to evaluate expression with context class " + context.getClass().getName());
    }
    JXPathContext jxPathContext = JXPathContext.newContext(CONTEXT, context);
    Variables variables = jxPathContext.getVariables();
    variables.declareVariable(AbstractExpression.CONTEXT_NODE_VARIABLE_NAME, context);
    variables.declareVariable(AbstractExpression.THIS_VARIABLE_NAME, thisNode);
    String expr = Path.getNormalizedPath(expression);
    Object result = jxPathContext.getValue(expr);
    return result;
}
Also used : Variables(org.apache.commons.jxpath.Variables) JXPathContext(org.apache.commons.jxpath.JXPathContext) Schema(org.openforis.idm.metamodel.Schema) NodeDefinition(org.openforis.idm.metamodel.NodeDefinition)

Example 29 with JXPathContext

use of org.apache.commons.jxpath.JXPathContext in project collect by openforis.

the class AbstractExpression method evaluateSingle.

protected Object evaluateSingle(Node<?> contextNode, Node<?> thisNode) throws InvalidExpressionException {
    try {
        JXPathContext jxPathContext = createJXPathContext(contextNode, thisNode);
        Object object = compiledExpression.getValue(jxPathContext);
        return object;
    } catch (IllegalArgumentException e) {
        throw new InvalidExpressionException(e.getMessage(), this.compiledExpression.toString());
    } catch (JXPathInvalidSyntaxException e) {
        throw new InvalidExpressionException(e.getMessage(), this.compiledExpression.toString());
    } catch (JXPathNotFoundException e) {
        return null;
    }
}
Also used : JXPathNotFoundException(org.apache.commons.jxpath.JXPathNotFoundException) JXPathInvalidSyntaxException(org.apache.commons.jxpath.JXPathInvalidSyntaxException) ModelJXPathContext(org.openforis.idm.model.expression.internal.ModelJXPathContext) JXPathContext(org.apache.commons.jxpath.JXPathContext)

Example 30 with JXPathContext

use of org.apache.commons.jxpath.JXPathContext in project vorto by eclipse.

the class JxPathContextFactory method getSharedContext.

private JXPathContext getSharedContext() {
    JXPathContext context = JXPathContext.newContext(null);
    context.setLenient(true);
    return context;
}
Also used : JXPathContext(org.apache.commons.jxpath.JXPathContext)

Aggregations

JXPathContext (org.apache.commons.jxpath.JXPathContext)37 Element (org.jdom.Element)12 JXPathException (org.apache.commons.jxpath.JXPathException)7 List (java.util.List)6 ArrayList (java.util.ArrayList)4 Document (org.w3c.dom.Document)4 Node (org.w3c.dom.Node)4 ByteArrayInputStream (java.io.ByteArrayInputStream)3 IOException (java.io.IOException)3 LinkedList (java.util.LinkedList)3 DocumentBuilderFactory (javax.xml.parsers.DocumentBuilderFactory)3 JXPathInvalidSyntaxException (org.apache.commons.jxpath.JXPathInvalidSyntaxException)3 Pointer (org.apache.commons.jxpath.Pointer)3 HttpResponse (org.apache.http.HttpResponse)3 StatusLine (org.apache.http.StatusLine)3 HttpClient (org.apache.http.client.HttpClient)3 HttpUriRequest (org.apache.http.client.methods.HttpUriRequest)3 DefaultHttpClient (org.apache.http.impl.client.DefaultHttpClient)3 Test (org.junit.Test)3 ModelJXPathContext (org.openforis.idm.model.expression.internal.ModelJXPathContext)3