1 package com.openinventions.webappfilter.util; 2 3 import com.openinventions.metaframework.*; 4 import org.apache.commons.logging.*; 5 6 public class StateXPath { 7 private static final Log log = LogFactory.getLog(StateXPath.class); 8 9 public String getValue(State state, String xpath) throws Exception { 10 if (xpath.indexOf("/", 1) < 0) { 11 return (String ) state.get(xpath.substring(1)); 12 } 13 14 String elementName = xpath.substring(1, xpath.indexOf("/", 1)); 15 String elementXPath = xpath.substring(xpath.indexOf("/", 1) + 1, xpath.length()); 16 return ((Element) state.get(elementName)).getValue(elementXPath); 17 } 18 19 public Element getElement(State state, String xpath) throws Exception { 20 if (xpath.indexOf("/", 1) < 0) { 21 return (Element) state.get(xpath.substring(1)); 22 } 23 24 String elementName = xpath.substring(1, xpath.indexOf("/", 1)); 25 return (Element) state.get(elementName); 26 } 27 28 public String getXPath(String xpath) throws Exception { 29 if (xpath.indexOf("/", 1) < 0) { 30 return xpath; 31 } 32 33 return xpath.substring(xpath.indexOf("/", 1) + 1, xpath.length()); 34 } 35 } 36 87 88 | Popular Tags |