java.io.Serializable
, ExternalObjectModel
public class DOMEnvelope extends java.lang.Object implements ExternalObjectModel, java.io.Serializable
Constructor | Description |
---|---|
DOMEnvelope() |
Modifier and Type | Method | Description |
---|---|---|
ValueRepresentation |
convertObjectToXPathValue(java.lang.Object object,
Configuration config) |
Convert a Java object to an XPath value.
|
java.lang.Object |
convertXPathValueToObject(ValueRepresentation 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 |
isRecognizedNodeClass(java.lang.Class nodeClass) |
Test whether this object model recognizes a given class as representing a
node 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 in the external object model in a wrapper that implements
the Saxon NodeInfo interface.
|
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 isRecognizedNodeClass(java.lang.Class nodeClass)
nodeClass
- A class that possibly represents nodespublic Receiver getDocumentBuilder(javax.xml.transform.Result result) throws XPathException
This implementation always returns null: it is not possible to construct an instance of this object model implementation directly as the result of a JAXP transformation.
getDocumentBuilder
in interface ExternalObjectModel
result
- a JAXP result objectXPathException
public boolean sendSource(javax.xml.transform.Source source, Receiver receiver, PipelineConfiguration pipe) throws XPathException
This implementation returns true only if the source is a DOMSource whose contained node is a a "NodeOverNodeInfo".
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(ValueRepresentation value, java.lang.Object targetClass, XPathContext context) throws XPathException
XPathException
- if the target class is explicitly associated with this object model, but the
supplied value cannot be converted to the appropriate classpublic 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