com.evolveum.midpoint.schema.holder
Class XPathHolder

java.lang.Object
  extended by com.evolveum.midpoint.schema.holder.XPathHolder

public class XPathHolder
extends java.lang.Object

TODO: documentation Assumes relative XPath, but somehow can also work with absolute XPaths.

Author:
semancik

Constructor Summary
XPathHolder()
          Sets "current node" Xpath.
XPathHolder(org.w3c.dom.Element domElement)
           
XPathHolder(java.util.List<XPathSegment> segments)
           
XPathHolder(java.util.List<XPathSegment> segments, boolean absolute)
           
XPathHolder(javax.xml.namespace.QName... segmentQNames)
           
XPathHolder(java.lang.String xpath)
           
XPathHolder(java.lang.String xpath, java.util.Map<java.lang.String,java.lang.String> namespaceMap)
           
XPathHolder(java.lang.String xpath, org.w3c.dom.Node domNode)
           
 
Method Summary
 boolean equals(java.lang.Object obj)
           
 java.util.Map<java.lang.String,java.lang.String> getNamespaceMap()
           
 java.util.List<XPathSegment> getTail(XPathHolder path)
          Returns a list of segments that are the "tail" after specified path.
 java.lang.String getXPath()
           
 java.lang.String getXPathWithDeclarations()
           
 int hashCode()
           
 boolean isBelow(XPathHolder path)
          Returns true if this path is below a specified path.
static boolean isDefault(org.w3c.dom.Element pathElement)
           
 boolean isEmpty()
           
 org.w3c.dom.Element toElement(javax.xml.namespace.QName elementQName, org.w3c.dom.Document document)
           
 org.w3c.dom.Element toElement(java.lang.String elementNamespace, java.lang.String localElementName)
           
 org.w3c.dom.Element toElement(java.lang.String elementNamespace, java.lang.String localElementName, org.w3c.dom.Document document)
           
 java.util.List<XPathSegment> toSegments()
           
 java.lang.String toString()
           
 XPathHolder transposedPath(java.util.List<XPathSegment> parentPath)
          Returns new XPath with a specified element prepended to the path.
 XPathHolder transposedPath(javax.xml.namespace.QName parentPath)
          Returns new XPath with a specified element prepended to the path.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

XPathHolder

public XPathHolder()
Sets "current node" Xpath.


XPathHolder

public XPathHolder(java.lang.String xpath)

XPathHolder

public XPathHolder(java.lang.String xpath,
                   java.util.Map<java.lang.String,java.lang.String> namespaceMap)

XPathHolder

public XPathHolder(java.util.List<XPathSegment> segments)

XPathHolder

public XPathHolder(java.util.List<XPathSegment> segments,
                   boolean absolute)

XPathHolder

public XPathHolder(org.w3c.dom.Element domElement)

XPathHolder

public XPathHolder(java.lang.String xpath,
                   org.w3c.dom.Node domNode)

XPathHolder

public XPathHolder(javax.xml.namespace.QName... segmentQNames)
Method Detail

getXPath

public java.lang.String getXPath()

getXPathWithDeclarations

public java.lang.String getXPathWithDeclarations()

getNamespaceMap

public java.util.Map<java.lang.String,java.lang.String> getNamespaceMap()

toElement

public org.w3c.dom.Element toElement(java.lang.String elementNamespace,
                                     java.lang.String localElementName)

toElement

public org.w3c.dom.Element toElement(javax.xml.namespace.QName elementQName,
                                     org.w3c.dom.Document document)

toElement

public org.w3c.dom.Element toElement(java.lang.String elementNamespace,
                                     java.lang.String localElementName,
                                     org.w3c.dom.Document document)

toSegments

public java.util.List<XPathSegment> toSegments()

transposedPath

public XPathHolder transposedPath(javax.xml.namespace.QName parentPath)
Returns new XPath with a specified element prepended to the path. Useful for "transposing" relative paths to a absolute root.

Parameters:
parentPath -
Returns:

transposedPath

public XPathHolder transposedPath(java.util.List<XPathSegment> parentPath)
Returns new XPath with a specified element prepended to the path. Useful for "transposing" relative paths to a absolute root.

Parameters:
parentPath -
Returns:

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

isEmpty

public boolean isEmpty()

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

isBelow

public boolean isBelow(XPathHolder path)
Returns true if this path is below a specified path.


getTail

public java.util.List<XPathSegment> getTail(XPathHolder path)
Returns a list of segments that are the "tail" after specified path. The path in the parameter is assumed to be a "superpath" to this path, e.i. this path is below specified path. This method returns all the segments of this path that are below the specified path. Returns null if the assumption is false.


isDefault

public static boolean isDefault(org.w3c.dom.Element pathElement)


Copyright © 2011 evolveum. All Rights Reserved.