1 9 10 package org.ozoneDB.xml.dom4j.xpath; 11 12 import org.dom4j.Document; 13 import org.dom4j.Element; 14 import org.dom4j.Namespace; 15 import org.dom4j.Node; 16 import org.jaxen.NamespaceContext; 17 import org.ozoneDB.OzoneObject; 18 19 20 28 public class OzoneNamespaceContext extends OzoneObject implements NamespaceContext { 29 30 final static long serialVersionUID = 1L; 31 32 private final Element element; 33 34 public OzoneNamespaceContext(Element element) { 35 this.element = element; 36 } 37 38 public static OzoneNamespaceContext create(Object node) { 39 Element element = null; 40 if (node instanceof Element) { 41 element = (Element) node; 42 } else if (node instanceof Document) { 43 Document doc = (Document) node; 44 element = doc.getRootElement(); 45 } else if (node instanceof Node) { 46 element = ((Node) node).getParent(); 47 } 48 if (element != null) { 49 return new OzoneNamespaceContext(element); 50 } 51 return null; 52 } 53 54 public String translateNamespacePrefixToUri(String prefix) { 55 if (prefix != null && prefix.length() > 0) { 56 Namespace ns = element.getNamespaceForPrefix(prefix); 57 if (ns != null) { 58 return ns.getURI(); 59 } 60 } 61 return null; 62 } 63 } 64 65 66 110 | Popular Tags |