EclipseLink 2.5.0, build 'v20130507-3faac2b' API Reference

org.eclipse.persistence.oxm.record
Class NodeRecord

java.lang.Object
  extended by org.eclipse.persistence.internal.core.sessions.CoreAbstractRecord
      extended by org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,MARSHALLER,org.eclipse.persistence.internal.oxm.NamespaceResolver>
          extended by org.eclipse.persistence.oxm.record.MarshalRecord
              extended by org.eclipse.persistence.oxm.record.NodeRecord
All Implemented Interfaces:
org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord, org.eclipse.persistence.internal.oxm.record.MarshalRecord, org.eclipse.persistence.internal.oxm.record.XMLRecord

public class NodeRecord
extends MarshalRecord

Use this type of MarshalRecord when the marshal target is a Node.

XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
NodeRecord nodeRecord = new NodeRecord();
nodeRecord.setDOM(myNode);
xmlMarshaller.marshal(myObject, nodeRecord);

If the marshal(Node) method is called on XMLMarshaller, then the Writer is automatically wrapped in a NodeRecord.

XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
xmlMarshaller.marshal(myObject, myNode);

See Also:
XMLMarshaller

Nested Class Summary
protected  class NodeRecord.NodeRecordContentHandler
          This class will typically be used in conjunction with an XMLFragmentReader.
 
Nested classes/interfaces inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
MarshalRecord.CycleDetectionStack<E>
 
Nested classes/interfaces inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord
org.eclipse.persistence.internal.oxm.record.XMLRecord.Nil
 
Field Summary
 
Fields inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
COLON_W_SCHEMA_NIL_ATTRIBUTE, textWrapperFragment, TRUE
 
Fields inherited from class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl
equalNamespaceResolvers, hasCustomNamespaceMapper, marshaller, namespaceAware, namespaceResolver, session
 
Fields inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord
DEFAULT_ATTRIBUTE_GROUP, NIL
 
Constructor Summary
NodeRecord()
          INTERNAL: Default constructor.
NodeRecord(org.w3c.dom.Node node)
          INTERNAL: Create a record with the element.
NodeRecord(java.lang.String rootElementName)
          INTERNAL: Create a record with the root element name.
NodeRecord(java.lang.String rootElementName, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
          INTERNAL: Create a record with the root element name get the namespace URI from the namespaceResolver.
NodeRecord(java.lang.String localRootElementName, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, org.w3c.dom.Node parent)
          INTERNAL: Create a record with the local root element name, that is a child of the parent.
NodeRecord(java.lang.String localRootElementName, org.w3c.dom.Node parent)
          INTERNAL: Create a record with the local root element name, that is a child of the parent.
 
Method Summary
 void attribute(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, java.lang.String value)
          INTERNAL:
 void attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, java.lang.String value)
          INTERNAL:
 void cdata(java.lang.String value)
          Receive notification of character data to be wrapped in a CDATA node.
 void characters(java.lang.String value)
          INTERNAL:
 void clear()
           
 void closeStartElement()
          INTERNAL:
 void element(org.eclipse.persistence.internal.oxm.XPathFragment frag)
          INTERNAL:
 void endDocument()
          INTERNAL:
 void endElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
          INTERNAL:
 org.w3c.dom.Document getDocument()
           
 org.w3c.dom.Node getDOM()
          Return the Node that the object will be marshalled to.
 java.lang.String getLocalName()
           
 java.lang.String getNamespaceURI()
           
 void node(org.w3c.dom.Node node, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, java.lang.String uri, java.lang.String name)
          Receive notification of a node.
 void openStartElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
          INTERNAL:
 void setDOM(org.w3c.dom.Node dom)
          Set the Node that the object will be marshalled to.
 void startDocument(java.lang.String encoding, java.lang.String version)
          INTERNAL:
 void startPrefixMappings(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
          INTERNAL: override so we don't iterate over namespaces when startPrefixMapping doesn't do anything
 java.lang.String transformToXML()
           
 
Methods inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
add, addGroupingElement, addPositionalNodes, afterContainmentMarshal, attribute, beforeContainmentMarshal, characters, closeStartGroupingElements, defaultNamespaceDeclaration, emptyAttribute, emptyCollection, emptyComplex, emptySimple, endCollection, endPrefixMapping, endPrefixMappings, getCurrentAttributeGroup, getCycleDetectionStack, getGroupingElements, getNameForFragment, getNameForFragmentBytes, getPositionalNodes, getPrefixForFragment, getStringForQName, getTextWrapperFragment, getValueToWrite, isWrapperAsCollectionName, marshalWithoutRootElement, namespaceDeclaration, namespaceDeclarations, nilComplex, nilSimple, node, openStartGroupingElements, popAttributeGroup, predicateAttribute, processNamespaceResolverForXSIPrefix, pushAttributeGroup, put, removeGroupingElement, setGroupingElement, setSession, startCollection, startPrefixMapping, writeHeader
 
Methods inherited from class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl
addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, attributeWithoutQName, getLeafElementType, getMarshaller, getNamespaceResolver, getNamespaceSeparator, getOwningObject, getSession, hasCustomNamespaceMapper, hasEqualNamespaceResolvers, isNamespaceAware, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setLeafElementType, setMarshaller, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
attributeWithoutQName, hasCustomNamespaceMapper, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, setLeafElementType, setMarshaller
 
Methods inherited from interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord
addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, getLeafElementType, getMarshaller, getNamespaceResolver, getOwningObject, hasEqualNamespaceResolvers, isNamespaceAware, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute
 
Methods inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord
getNamespaceSeparator, getSession
 

Constructor Detail

NodeRecord

public NodeRecord()
INTERNAL: Default constructor.


NodeRecord

public NodeRecord(java.lang.String rootElementName)
INTERNAL: Create a record with the root element name.


NodeRecord

public NodeRecord(java.lang.String rootElementName,
                  org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL: Create a record with the root element name get the namespace URI from the namespaceResolver.


NodeRecord

public NodeRecord(java.lang.String localRootElementName,
                  org.w3c.dom.Node parent)
INTERNAL: Create a record with the local root element name, that is a child of the parent.


NodeRecord

public NodeRecord(java.lang.String localRootElementName,
                  org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver,
                  org.w3c.dom.Node parent)
INTERNAL: Create a record with the local root element name, that is a child of the parent. Lookup the namespace URI from the namespaceResolver.


NodeRecord

public NodeRecord(org.w3c.dom.Node node)
INTERNAL: Create a record with the element.

Method Detail

getLocalName

public java.lang.String getLocalName()
Overrides:
getLocalName in class MarshalRecord

getNamespaceURI

public java.lang.String getNamespaceURI()
Overrides:
getNamespaceURI in class MarshalRecord

clear

public void clear()
Overrides:
clear in class MarshalRecord

getDocument

public org.w3c.dom.Document getDocument()
Overrides:
getDocument in class MarshalRecord

getDOM

public org.w3c.dom.Node getDOM()
Return the Node that the object will be marshalled to.

Specified by:
getDOM in interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord
Overrides:
getDOM in class MarshalRecord
Returns:
The marshal target.

setDOM

public void setDOM(org.w3c.dom.Node dom)
Set the Node that the object will be marshalled to.

Parameters:
writer - The marshal target.

transformToXML

public java.lang.String transformToXML()
Overrides:
transformToXML in class MarshalRecord

startDocument

public void startDocument(java.lang.String encoding,
                          java.lang.String version)
INTERNAL:

Specified by:
startDocument in class MarshalRecord
Parameters:
encoding - The XML document will be encoded using this encoding.
version - This specifies the version of XML.

endDocument

public void endDocument()
INTERNAL:

Specified by:
endDocument in class MarshalRecord

node

public void node(org.w3c.dom.Node node,
                 org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver,
                 java.lang.String uri,
                 java.lang.String name)
Description copied from class: MarshalRecord
Receive notification of a node.

Specified by:
node in class MarshalRecord
Parameters:
node - The Node to be added to the document
name - replacement root namespace for the node namespace URI/prefix of the node

openStartElement

public void openStartElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment,
                             org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:

Specified by:
openStartElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
Overrides:
openStartElement in class MarshalRecord
Parameters:
xPathFragment - The XPathFragment contains the name and prefix information about the XML element being ended.
namespaceResolver - The NamespaceResolver can be used to resolve the namespace URI for the namespace prefix held by the XPathFragment (if required).

element

public void element(org.eclipse.persistence.internal.oxm.XPathFragment frag)
INTERNAL:

Specified by:
element in class MarshalRecord
Parameters:
frag - The XPathFragment of the element

attribute

public void attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment,
                      org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver,
                      java.lang.String value)
INTERNAL:

Specified by:
attribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
Specified by:
attribute in class MarshalRecord
Parameters:
xPathFragment - The XPathFragment contains the name and prefix information about the XML element being ended.
namespaceResolver - The NamespaceResolver can be used to resolve the namespace URI for the namespace prefix held by the XPathFragment (if required).
value - This is the complete value for the attribute.

attribute

public void attribute(java.lang.String namespaceURI,
                      java.lang.String localName,
                      java.lang.String qName,
                      java.lang.String value)
INTERNAL:

Specified by:
attribute in interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord
Specified by:
attribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
Specified by:
attribute in class MarshalRecord
Parameters:
namespaceURI - The namespace URI, if the attribute is not namespace qualified the value of this parameter wil be null.
localName - The local name of the attribute.
qName - The qualified name of the attribute.
value - This is the complete value for the attribute.

closeStartElement

public void closeStartElement()
INTERNAL:

Specified by:
closeStartElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
Specified by:
closeStartElement in class MarshalRecord

endElement

public void endElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment,
                       org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:

Specified by:
endElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
Specified by:
endElement in class MarshalRecord
Parameters:
xPathFragment - The XPathFragment contains the name and prefix information about the XML element being ended.
namespaceResolver - The NamespaceResolver can be used to resolve the namespace URI for the namespace prefix held by the XPathFragment (if required).

characters

public void characters(java.lang.String value)
INTERNAL:

Specified by:
characters in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
Specified by:
characters in class MarshalRecord
Parameters:
value - This is the entire value of the text node.

cdata

public void cdata(java.lang.String value)
Description copied from class: MarshalRecord
Receive notification of character data to be wrapped in a CDATA node.

Specified by:
cdata in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
Specified by:
cdata in class MarshalRecord
Parameters:
value - This is the value of the text to be wrapped

startPrefixMappings

public void startPrefixMappings(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL: override so we don't iterate over namespaces when startPrefixMapping doesn't do anything

Overrides:
startPrefixMappings in class MarshalRecord

EclipseLink 2.5.0, build 'v20130507-3faac2b' API Reference