java.lang.Object
org.eclipse.persistence.internal.core.sessions.CoreAbstractRecord
org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl
org.eclipse.persistence.oxm.record.MarshalRecord
org.eclipse.persistence.oxm.record.NodeRecord
- All Implemented Interfaces:
AbstractMarshalRecord,MarshalRecord,XMLRecord
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:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classThis class will typically be used in conjunction with an XMLFragmentReader.Nested classes/interfaces inherited from interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
MarshalRecord.CycleDetectionStack<E>Nested classes/interfaces inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord
XMLRecord.Nil -
Field Summary
Fields inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
COLON_W_SCHEMA_NIL_ATTRIBUTE, textWrapperFragment, TRUEFields inherited from class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl
equalNamespaceResolvers, hasCustomNamespaceMapper, marshaller, namespaceAware, namespaceResolver, sessionFields inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord
DEFAULT_ATTRIBUTE_GROUP, NIL -
Constructor Summary
ConstructorsConstructorDescriptionINTERNAL: Default constructor.NodeRecord(String rootElementName) INTERNAL: Create a record with the root element name.NodeRecord(String rootElementName, NamespaceResolver namespaceResolver) INTERNAL: Create a record with the root element name get the namespace URI from the namespaceResolver.NodeRecord(String localRootElementName, NamespaceResolver namespaceResolver, Node parent) INTERNAL: Create a record with the local root element name, that is a child of the parent.NodeRecord(String localRootElementName, Node parent) INTERNAL: Create a record with the local root element name, that is a child of the parent.NodeRecord(Node node) INTERNAL: Create a record with the element. -
Method Summary
Modifier and TypeMethodDescriptionvoidINTERNAL:voidattribute(XPathFragment xPathFragment, NamespaceResolver namespaceResolver, String value) INTERNAL:voidReceive notification of character data to be wrapped in a CDATA node.voidcharacters(String value) INTERNAL:voidclear()voidINTERNAL:voidelement(XPathFragment frag) INTERNAL:voidINTERNAL:voidendElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver) INTERNAL:getDOM()Return the Node that the object will be marshalled to.voidnode(Node node, NamespaceResolver namespaceResolver, String uri, String name) Receive notification of a node.voidopenStartElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver) INTERNAL:voidSet the Node that the object will be marshalled to.voidstartDocument(String encoding, String version) INTERNAL:voidstartPrefixMappings(NamespaceResolver namespaceResolver) INTERNAL: override so we don't iterate over namespaces when startPrefixMapping doesn't do anythingMethods 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, flush, forceValueWrapper, getCurrentAttributeGroup, getCycleDetectionStack, getGroupingElements, getNameForFragment, getPositionalNodes, getPrefixBytes, getPrefixForFragment, getStringForQName, getTextWrapperFragment, getValueToWrite, isWrapperAsCollectionName, marshalWithoutRootElement, namespaceDeclaration, namespaceDeclarations, nilComplex, nilSimple, node, openStartGroupingElements, popAttributeGroup, predicateAttribute, processNamespaceResolverForXSIPrefix, pushAttributeGroup, put, removeGroupingElement, setGroupingElement, setSession, startCollection, startPrefixMapping, writeHeaderMethods inherited from class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl
addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, attributeWithoutQName, getConversionManager, getLeafElementType, getMarshaller, getNamespaceResolver, getNamespaceSeparator, getOwningObject, getSession, hasCustomNamespaceMapper, hasEqualNamespaceResolvers, isNamespaceAware, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setLeafElementType, setMarshaller, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttributeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods 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, writeXsiTypeAttributeMethods inherited from interface org.eclipse.persistence.internal.oxm.record.MarshalRecord
attributeWithoutQName, hasCustomNamespaceMapper, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, setLeafElementType, setMarshallerMethods inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord
getConversionManager, getNamespaceSeparator, getSession
-
Constructor Details
-
NodeRecord
public NodeRecord()INTERNAL: Default constructor. -
NodeRecord
INTERNAL: Create a record with the root element name. -
NodeRecord
INTERNAL: Create a record with the root element name get the namespace URI from the namespaceResolver. -
NodeRecord
INTERNAL: Create a record with the local root element name, that is a child of the parent. -
NodeRecord
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
INTERNAL: Create a record with the element.
-
-
Method Details
-
getLocalName
- Overrides:
getLocalNamein classMarshalRecord
-
getNamespaceURI
- Overrides:
getNamespaceURIin classMarshalRecord
-
clear
public void clear()- Overrides:
clearin classMarshalRecord
-
getDocument
- Overrides:
getDocumentin classMarshalRecord
-
getDOM
Return the Node that the object will be marshalled to.- Specified by:
getDOMin interfaceAbstractMarshalRecord- Overrides:
getDOMin classMarshalRecord- Returns:
- The marshal target.
-
setDOM
Set the Node that the object will be marshalled to.- Parameters:
dom- The marshal target.
-
transformToXML
- Overrides:
transformToXMLin classMarshalRecord
-
startDocument
INTERNAL:- Specified by:
startDocumentin classMarshalRecord- 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:
endDocumentin classMarshalRecord
-
node
Description copied from class:MarshalRecordReceive notification of a node.- Specified by:
nodein classMarshalRecord- Parameters:
node- The Node to be added to the documentnamespaceResolver- The NamespaceResolver can be used to resolve theuri- replacement root name for the nodename- replacement root namespace for the node namespace URI/prefix of the node
-
openStartElement
INTERNAL:- Specified by:
openStartElementin interfaceMarshalRecord- Overrides:
openStartElementin classMarshalRecord- 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
INTERNAL:- Specified by:
elementin classMarshalRecord- Parameters:
frag- The XPathFragment of the element
-
attribute
public void attribute(XPathFragment xPathFragment, NamespaceResolver namespaceResolver, String value) INTERNAL:- Specified by:
attributein interfaceMarshalRecord- Specified by:
attributein classMarshalRecord- 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
INTERNAL:- Specified by:
attributein interfaceAbstractMarshalRecord- Specified by:
attributein interfaceMarshalRecord- Specified by:
attributein classMarshalRecord- 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:
closeStartElementin interfaceMarshalRecord- Specified by:
closeStartElementin classMarshalRecord
-
endElement
INTERNAL:- Specified by:
endElementin interfaceMarshalRecord- Specified by:
endElementin classMarshalRecord- 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
INTERNAL:- Specified by:
charactersin interfaceMarshalRecord- Specified by:
charactersin classMarshalRecord- Parameters:
value- This is the entire value of the text node.
-
cdata
Description copied from class:MarshalRecordReceive notification of character data to be wrapped in a CDATA node.- Specified by:
cdatain interfaceMarshalRecord- Specified by:
cdatain classMarshalRecord- Parameters:
value- This is the value of the text to be wrapped
-
startPrefixMappings
INTERNAL: override so we don't iterate over namespaces when startPrefixMapping doesn't do anything- Overrides:
startPrefixMappingsin classMarshalRecord
-