public Document checkStockLevel(Document doc) { String isbn = isbnSelectingXPath.evaluateAsString(doc); boolean inStock = false; // we only carry stock of one book currently if ("0321200683".equals(isbn)) { inStock = true; } doc.getDocumentElement().setAttribute("in-stock", String.valueOf(inStock)); return doc; }
public Object evaluateXPath(XPathExpression expression, Node node) { return expression.evaluateAsNode(node); } },
public Traffic read(Class<? extends Traffic> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException { Traffic traffic = new Traffic(); try { Document document = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(inputMessage.getBody()); XPathExpression titlesXp = XPathExpressionFactory.createXPathExpression("/ResultSet/Result[@type='incident']/Title"); List<Node> titles = titlesXp.evaluateAsNodeList(document); XPathExpression descXp = XPathExpressionFactory.createXPathExpression("/ResultSet/Result[@type='incident']/Description"); List<Node> description = descXp.evaluateAsNodeList(document); int counter = 0; for (Node node : titles) { traffic.addIncident(((Element)node).getTextContent(), ((Element)description.get(counter++)).getTextContent()); } } catch (Exception e) { throw new HttpMessageConversionException("Failed to convert response to: " + clazz, e); } return traffic; }
@Override protected List<Object> getChannelKeys(Message<?> message) { Node node = this.converter.convertToNode(message.getPayload()); if (this.evaluateAsString) { return Collections.singletonList((Object) this.xPathExpression.evaluateAsString(node)); } else { return this.xPathExpression.evaluate(node, this.nodeMapper); } }
return (T) expression.evaluateAsString(node); return (T) expression.evaluateAsObject(node, (NodeMapper<?>) resultType);
public Object evaluateXPath(XPathExpression expression, Node node) { return expression.evaluateAsBoolean(node); } },
public Object evaluateXPath(XPathExpression expression, Node node) { return expression.evaluateAsNumber(node); } },
List<Order> orders = orderXPath.evaluate(responseResult.getNode(), new NodeMapper<Order>() {
/** * Return true if the {@link XPathExpression} evaluates to <code>true</code> */ @Override public boolean accept(Message<?> message) { Node node = getConverter().convertToNode(message.getPayload()); return getXPathExpresion().evaluateAsBoolean(node); }
public void match(WebServiceMessage message) throws IOException, AssertionError { Node payload = transformToNode(message); double result = expression.evaluateAsNumber(payload); assertEquals("Evaluation of XPath expression \"" + expressionString + "\" failed.", expectedValue, result, "Payload", message.getPayloadSource()); } };
public Object unmarshal(Source source) throws IOException, XmlMappingException { //this.writeXml(((DOMSource)source).getNode().getOwnerDocument()); DOMResult result = null; try { Transformer transformer = transformerFactory.newTransformer(); result = new DOMResult(); transformer.transform(source, result); } catch (Exception e) { throw new MarshallingFailureException("Failed to unmarshal SOAP Response", e); } Weather weather = new Weather(); String expression = xpathPrefix + "p:City"; String city = XPathExpressionFactory.createXPathExpression(expression, namespacePrefixes).evaluateAsString(result.getNode()); weather.setCity(city); expression = xpathPrefix + "p:State"; String state = XPathExpressionFactory.createXPathExpression(expression, namespacePrefixes).evaluateAsString(result.getNode()); weather.setState(state); expression = xpathPrefix + "p:Temperature"; String temperature = XPathExpressionFactory.createXPathExpression(expression, namespacePrefixes).evaluateAsString(result.getNode()); weather.setTemperature(temperature); expression = xpathPrefix + "p:Description"; String description = XPathExpressionFactory.createXPathExpression(expression, namespacePrefixes).evaluateAsString(result.getNode()); weather.setDescription(description); return weather; }
public void match(WebServiceMessage message) throws IOException, AssertionError { Node payload = transformToNode(message); Node result = expression.evaluateAsNode(payload); if (result == null) { fail("No match for \"" + expressionString + "\" found", "Payload", message.getPayloadSource()); } } };
public Object evaluateXPath(XPathExpression expression, Node node) { return expression.evaluateAsNodeList(node); } };
public void match(WebServiceMessage message) throws IOException, AssertionError { Node payload = transformToNode(message); boolean result = expression.evaluateAsBoolean(payload); assertEquals("Evaluation of XPath expression \"" + expressionString + "\" failed.", expectedValue, result, "Payload", message.getPayloadSource()); } };
public void match(WebServiceMessage message) throws IOException, AssertionError { Node payload = transformToNode(message); double result = expression.evaluateAsNumber(payload); assertEquals("Evaluation of XPath expression \"" + expressionString + "\" failed.", expectedValue, result, "Payload", message.getPayloadSource()); } };
public Object evaluateXPath(XPathExpression expression, Node node) { return expression.evaluateAsString(node); } },
public void match(WebServiceMessage message) throws IOException, AssertionError { Node payload = transformToNode(message); Node result = expression.evaluateAsNode(payload); if (result != null) { fail("Match for \"" + expressionString + "\" found", "Payload", message.getPayloadSource()); } } };
private Object splitNode(Node node) throws ParserConfigurationException { if (this.iterator) { try { NodeList nodeList = (NodeList) this.jaxpExpression.evaluate(node, XPathConstants.NODESET); return new NodeListIterator(nodeList); } catch (XPathExpressionException e) { throw new XPathException("Could not evaluate XPath expression:" + e.getMessage(), e); } } else { List<Node> nodeList = this.xpathExpression.evaluateAsNodeList(node); if (this.createDocuments) { return convertNodesToDocuments(nodeList); } return nodeList; } }
public void match(WebServiceMessage message) throws IOException, AssertionError { Node payload = transformToNode(message); boolean result = expression.evaluateAsBoolean(payload); assertEquals("Evaluation of XPath expression \"" + expressionString + "\" failed.", expectedValue, result, "Payload", message.getPayloadSource()); } };
public void match(WebServiceMessage message) throws IOException, AssertionError { Node payload = transformToNode(message); double result = expression.evaluateAsNumber(payload); assertEquals("Evaluation of XPath expression \"" + expressionString + "\" failed.", expectedValue, result, "Payload", message.getPayloadSource()); } };