public class DOM4JObjectModel extends java.lang.Object implements ExternalObjectModel, java.io.Serializable
Constructor and Description |
---|
DOM4JObjectModel() |
Modifier and Type | Method and Description |
---|---|
ValueRepresentation |
convertObjectToXPathValue(java.lang.Object object,
Configuration config)
Convert a Java object to an XPath value.
|
java.lang.Object |
convertXPathValueToObject(Value value,
java.lang.Object targetClass,
XPathContext context)
Convert an XPath value to an object in this object model.
|
Receiver |
getDocumentBuilder(javax.xml.transform.Result result)
Test whether this object model recognizes a particular kind of JAXP Result object,
and if it does, return a Receiver that builds an instance of this data model from
a sequence of events.
|
java.lang.String |
getIdentifyingURI()
Get the URI of the external object model as used in the JAXP factory interfaces for obtaining
an XPath implementation
|
JPConverter |
getJPConverter(java.lang.Class targetClass)
Get a converter from XPath values to values in the external object model
|
PJConverter |
getNodeListCreator(java.lang.Object node)
Get a converter that converts a sequence of XPath nodes to this model's representation
of a node list.
|
PJConverter |
getPJConverter(java.lang.Class targetClass)
Get a converter from XPath values to values in the external object model
|
boolean |
isRecognizedNode(java.lang.Object object)
Test whether this object model recognizes a given node as one of its own
|
boolean |
isRecognizedNodeListClass(java.lang.Class nodeClass)
Test whether this object model recognizes a given class as representing a
list of nodes in that object model.
|
boolean |
sendSource(javax.xml.transform.Source source,
Receiver receiver,
PipelineConfiguration pipe)
Test whether this object model recognizes a particular kind of JAXP Source object,
and if it does, send the contents of the document to a supplied Receiver, and return true.
|
NodeInfo |
unravel(javax.xml.transform.Source source,
Configuration config)
Wrap or unwrap a node using this object model to return the corresponding Saxon node.
|
DocumentInfo |
wrapDocument(java.lang.Object node,
java.lang.String baseURI,
Configuration config)
Wrap a document node in the external object model in a document wrapper that implements
the Saxon DocumentInfo interface
|
NodeInfo |
wrapNode(DocumentInfo document,
java.lang.Object node)
Wrap a node within the external object model in a node wrapper that implements the Saxon
VirtualNode interface (which is an extension of NodeInfo)
|
public java.lang.String getIdentifyingURI()
getIdentifyingURI
in interface ExternalObjectModel
public PJConverter getPJConverter(java.lang.Class targetClass)
ExternalObjectModel
getPJConverter
in interface ExternalObjectModel
targetClass
- the required class of the result of the conversion. If this class represents
a node or list of nodes in the external object model, the method should return a converter that takes
a native node or sequence of nodes as input and returns a node or sequence of nodes in the
external object model representation. Otherwise, it should return null.public JPConverter getJPConverter(java.lang.Class targetClass)
ExternalObjectModel
getJPConverter
in interface ExternalObjectModel
targetClass
- the required class of the result of the conversion. If this class represents
a node or list of nodes in the external object model, the method should return a converter that takes
an object of this class as input and returns a node or sequence of nodes in the
native Saxon representation. Otherwise, it should return null.public PJConverter getNodeListCreator(java.lang.Object node)
getNodeListCreator
in interface ExternalObjectModel
node
- an example of the kind of node used in this modelpublic boolean isRecognizedNode(java.lang.Object object)
public boolean isRecognizedNodeListClass(java.lang.Class nodeClass)
nodeClass
- A class that possibly represents nodespublic Receiver getDocumentBuilder(javax.xml.transform.Result result)
getDocumentBuilder
in interface ExternalObjectModel
result
- a JAXP result objectpublic boolean sendSource(javax.xml.transform.Source source, Receiver receiver, PipelineConfiguration pipe) throws XPathException
sendSource
in interface ExternalObjectModel
source
- a JAXP Source objectreceiver
- the Receiver that is to receive the data from the Sourcepipe
- configuration informationXPathException
public NodeInfo unravel(javax.xml.transform.Source source, Configuration config)
unravel
in interface ExternalObjectModel
source
- a JAXP Source objectconfig
- the Saxon configurationpublic ValueRepresentation convertObjectToXPathValue(java.lang.Object object, Configuration config) throws XPathException
XPathException
public java.lang.Object convertXPathValueToObject(Value value, java.lang.Object targetClass, XPathContext context)
public DocumentInfo wrapDocument(java.lang.Object node, java.lang.String baseURI, Configuration config)
node
- a node (any node) in the third party documentbaseURI
- the base URI of the node (supply "" if unknown)config
- the Saxon configuration (which among other things provides access to the NamePool)public NodeInfo wrapNode(DocumentInfo document, java.lang.Object node)
document
- the document wrapper, as a DocumentInfo objectnode
- the node to be wrapped. This must be a node within the document wrapped by the
DocumentInfo provided in the first argument