public final class DocumentHelper
extends java.lang.Object
DocumentHelper
is a collection of helper methods for using
DOM4J.Modifier and Type | Method and Description |
---|---|
static Attribute |
createAttribute(Element owner,
QName qname,
java.lang.String value) |
static Attribute |
createAttribute(Element owner,
java.lang.String name,
java.lang.String value) |
static CDATA |
createCDATA(java.lang.String text) |
static Comment |
createComment(java.lang.String text) |
static Document |
createDocument() |
static Document |
createDocument(Element rootElement) |
static Element |
createElement(QName qname) |
static Element |
createElement(java.lang.String name) |
static Entity |
createEntity(java.lang.String name,
java.lang.String text) |
static Namespace |
createNamespace(java.lang.String prefix,
java.lang.String uri) |
static Pattern |
createPattern(java.lang.String xpathPattern)
createPattern parses the given XPath expression to create
an XSLT style Pattern instance which can then be used in an XSLT
processing model. |
static ProcessingInstruction |
createProcessingInstruction(java.lang.String pi,
java.util.Map<java.lang.String,java.lang.String> data) |
static ProcessingInstruction |
createProcessingInstruction(java.lang.String pi,
java.lang.String d) |
static QName |
createQName(java.lang.String localName) |
static QName |
createQName(java.lang.String localName,
Namespace namespace) |
static Text |
createText(java.lang.String text) |
static XPath |
createXPath(java.lang.String xpathExpression)
createXPath parses an XPath expression and creates a new
XPath XPath instance using the singleton DocumentFactory . |
static XPath |
createXPath(java.lang.String xpathExpression,
org.jaxen.VariableContext context)
createXPath parses an XPath expression and creates a new
XPath XPath instance using the singleton DocumentFactory . |
static NodeFilter |
createXPathFilter(java.lang.String xpathFilterExpression)
createXPathFilter parses a NodeFilter from the given XPath
filter expression using the singleton DocumentFactory . |
static Element |
makeElement(Branch source,
java.lang.String path)
makeElement
a helper method which navigates from the given Document or Element node
to some Element using the path expression, creating any necessary
elements along the way.
|
static Document |
parseText(java.lang.String text)
parseText parses the given text as an XML document and
returns the newly created Document. |
static java.util.List<Node> |
selectNodes(java.lang.String xpathFilterExpression,
java.util.List<Node> nodes)
selectNodes performs the given XPath expression on the
List of Node instances appending all the results together
into a single list. |
static java.util.List<Node> |
selectNodes(java.lang.String xpathFilterExpression,
Node node)
selectNodes performs the given XPath expression on the
List of Node instances appending all the results together
into a single list. |
static void |
sort(java.util.List<Node> list,
java.lang.String xpathExpression)
sort sorts the given List of Nodes using an XPath
expression as a Comparator . |
static void |
sort(java.util.List<Node> list,
java.lang.String expression,
boolean distinct)
sort sorts the given List of Nodes using an XPath
expression as a Comparator and optionally removing
duplicates. |
public static Document createDocument()
public static Element createElement(java.lang.String name)
public static Attribute createAttribute(Element owner, QName qname, java.lang.String value)
public static Attribute createAttribute(Element owner, java.lang.String name, java.lang.String value)
public static CDATA createCDATA(java.lang.String text)
public static Comment createComment(java.lang.String text)
public static Text createText(java.lang.String text)
public static Entity createEntity(java.lang.String name, java.lang.String text)
public static Namespace createNamespace(java.lang.String prefix, java.lang.String uri)
public static ProcessingInstruction createProcessingInstruction(java.lang.String pi, java.lang.String d)
public static ProcessingInstruction createProcessingInstruction(java.lang.String pi, java.util.Map<java.lang.String,java.lang.String> data)
public static QName createQName(java.lang.String localName)
public static XPath createXPath(java.lang.String xpathExpression) throws InvalidXPathException
createXPath
parses an XPath expression and creates a new
XPath XPath
instance using the singleton DocumentFactory
.
xpathExpression
- is the XPath expression to createXPath
instanceInvalidXPathException
- if the XPath expression is invalidpublic static XPath createXPath(java.lang.String xpathExpression, org.jaxen.VariableContext context) throws InvalidXPathException
createXPath
parses an XPath expression and creates a new
XPath XPath
instance using the singleton DocumentFactory
.
xpathExpression
- is the XPath expression to createcontext
- is the variable context to use when evaluating the XPathXPath
instanceInvalidXPathException
- if the XPath expression is invalidpublic static NodeFilter createXPathFilter(java.lang.String xpathFilterExpression)
createXPathFilter
parses a NodeFilter from the given XPath
filter expression using the singleton DocumentFactory
. XPath
filter expressions occur within XPath expressions such as
self::node()[ filterExpression ]
xpathFilterExpression
- is the XPath filter expression to createNodeFilter
instancepublic static Pattern createPattern(java.lang.String xpathPattern)
createPattern
parses the given XPath expression to create
an XSLT style Pattern
instance which can then be used in an XSLT
processing model.
xpathPattern
- is the XPath pattern expression to createPattern
instancepublic static java.util.List<Node> selectNodes(java.lang.String xpathFilterExpression, java.util.List<Node> nodes)
selectNodes
performs the given XPath expression on the
List
of Node
instances appending all the results together
into a single list.
xpathFilterExpression
- is the XPath filter expression to evaluatenodes
- is the list of nodes on which to evalute the XPathpublic static java.util.List<Node> selectNodes(java.lang.String xpathFilterExpression, Node node)
selectNodes
performs the given XPath expression on the
List
of Node
instances appending all the results together
into a single list.
xpathFilterExpression
- is the XPath filter expression to evaluatenode
- is the Node on which to evalute the XPathpublic static void sort(java.util.List<Node> list, java.lang.String xpathExpression)
sort
sorts the given List of Nodes using an XPath
expression as a Comparator
.
list
- is the list of Nodes to sortxpathExpression
- is the XPath expression used for comparisonpublic static void sort(java.util.List<Node> list, java.lang.String expression, boolean distinct)
sort
sorts the given List of Nodes using an XPath
expression as a Comparator
and optionally removing
duplicates.
list
- is the list of Nodes to sortexpression
- is the XPath expression used for comparisondistinct
- if true then duplicate values (using the sortXPath for
comparisions) will be removed from the Listpublic static Document parseText(java.lang.String text) throws DocumentException
parseText
parses the given text as an XML document and
returns the newly created Document.
text
- the XML text to be parsedDocumentException
- if the document could not be parsedpublic static Element makeElement(Branch source, java.lang.String path)
makeElement
a helper method which navigates from the given Document or Element node to some Element using the path expression, creating any necessary elements along the way. For example the patha/b/c
would
get the first child <a> element, which would be created if it did
not exist, then the next child <b> and so on until finally a
<c> element is returned.source
- is the Element or Document to start navigating frompath
- is a simple path expression, seperated by '/' which denotes
the path from the source to the resulting element such as
a/b/c