Class ContentHandlerRecord
- java.lang.Object
-
- org.eclipse.persistence.internal.core.sessions.CoreAbstractRecord
-
- org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,MARSHALLER,org.eclipse.persistence.internal.oxm.NamespaceResolver>
-
- org.eclipse.persistence.oxm.record.MarshalRecord
-
- org.eclipse.persistence.oxm.record.ContentHandlerRecord
-
- 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 ContentHandlerRecord extends MarshalRecord
Use this type of MarshalRecord when the marshal target is a ContentHandler.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
ContentHandlerRecord contentHandlerRecord = new ContentHandlerRecord();
marshalRecord.setContentHandler(myContentHandler);
xmlMarshaller.marshal(myObject, contentHandlerRecord);
If the marshal(ContentHandler) method is called on XMLMarshaller, then the ContentHanlder is automatically wrapped in a ContentHandlerRecord.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
xmlMarshaller.marshal(myObject, contentHandler);
- See Also:
XMLMarshaller
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
isStartElementOpen
-
Fields inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
COLON_W_SCHEMA_NIL_ATTRIBUTE, textWrapperFragment, TRUE
-
-
Constructor Summary
Constructors Constructor Description ContentHandlerRecord()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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)
INTERNAL:void
characters(java.lang.String value)
INTERNAL: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:void
endPrefixMapping(java.lang.String prefix)
INTERNAL:org.xml.sax.ContentHandler
getContentHandler()
Return the ContentHandler that the object will be marshalled to.void
namespaceDeclarations(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL: Add the namespace declarations to the XML document.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:java.lang.String
resolveNamespacePrefix(java.lang.String s)
java.lang.String
resolveNamespacePrefix(org.eclipse.persistence.internal.oxm.XPathFragment frag, org.eclipse.persistence.internal.oxm.NamespaceResolver resolver)
void
setContentHandler(org.xml.sax.ContentHandler contentHandler)
Set the ContentHandler that the object will be marshalled to.void
setLexicalHandler(org.xml.sax.ext.LexicalHandler lexicalHandler)
Set the LexicalHandler to receive CDATA related eventsvoid
startDocument(java.lang.String encoding, java.lang.String version)
INTERNAL:void
startPrefixMapping(java.lang.String prefix, java.lang.String namespaceURI)
INTERNAL:void
startPrefixMappings(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
-
Methods inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
add, addGroupingElement, addPositionalNodes, afterContainmentMarshal, attribute, beforeContainmentMarshal, characters, clear, closeStartGroupingElements, defaultNamespaceDeclaration, emptyAttribute, emptyCollection, emptyComplex, emptySimple, endCollection, endPrefixMappings, flush, forceValueWrapper, getCurrentAttributeGroup, getCycleDetectionStack, getDocument, getDOM, getGroupingElements, getLocalName, getNameForFragment, getNamespaceURI, getPositionalNodes, getPrefixBytes, getPrefixForFragment, getStringForQName, getTextWrapperFragment, getValueToWrite, isWrapperAsCollectionName, marshalWithoutRootElement, namespaceDeclaration, nilComplex, nilSimple, node, openStartGroupingElements, popAttributeGroup, predicateAttribute, processNamespaceResolverForXSIPrefix, pushAttributeGroup, put, removeGroupingElement, setGroupingElement, setSession, startCollection, transformToXML, writeHeader
-
Methods 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, 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.AbstractMarshalRecord
addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, getLeafElementType, getMarshaller, getNamespaceResolver, getOwningObject, hasEqualNamespaceResolvers, isNamespaceAware, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute
-
-
-
-
Method Detail
-
getContentHandler
public org.xml.sax.ContentHandler getContentHandler()
Return the ContentHandler that the object will be marshalled to.- Returns:
- The marshal target.
-
setContentHandler
public void setContentHandler(org.xml.sax.ContentHandler contentHandler)
Set the ContentHandler that the object will be marshalled to.- Parameters:
contentHandler
- The marshal target.
-
setLexicalHandler
public void setLexicalHandler(org.xml.sax.ext.LexicalHandler lexicalHandler)
Set the LexicalHandler to receive CDATA related events
-
startDocument
public void startDocument(java.lang.String encoding, java.lang.String version)
INTERNAL:- Specified by:
startDocument
in 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:
endDocument
in classMarshalRecord
-
startPrefixMappings
public void startPrefixMappings(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
- Overrides:
startPrefixMappings
in classMarshalRecord
-
startPrefixMapping
public void startPrefixMapping(java.lang.String prefix, java.lang.String namespaceURI)
INTERNAL:- Specified by:
startPrefixMapping
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Overrides:
startPrefixMapping
in classMarshalRecord
- Parameters:
prefix
- The namespace prefix.namespaceURI
- The namespace URI.
-
namespaceDeclarations
public void namespaceDeclarations(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL: Add the namespace declarations to the XML document.- Overrides:
namespaceDeclarations
in classMarshalRecord
- Parameters:
namespaceResolver
- The NamespaceResolver contains the namespace prefix and URI pairings that need to be declared.
-
endPrefixMapping
public void endPrefixMapping(java.lang.String prefix)
INTERNAL:- Specified by:
endPrefixMapping
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Overrides:
endPrefixMapping
in classMarshalRecord
- Parameters:
prefix
- The namespace prefix.
-
openStartElement
public void openStartElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:- Specified by:
openStartElement
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Overrides:
openStartElement
in 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
public void element(org.eclipse.persistence.internal.oxm.XPathFragment frag)
INTERNAL:- Specified by:
element
in classMarshalRecord
- 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 interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Specified by:
attribute
in 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
public void attribute(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, java.lang.String value)
INTERNAL:- Specified by:
attribute
in interfaceorg.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord
- Specified by:
attribute
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Specified by:
attribute
in 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:
closeStartElement
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Specified by:
closeStartElement
in classMarshalRecord
-
endElement
public void endElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:- Specified by:
endElement
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Specified by:
endElement
in 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
public void characters(java.lang.String value)
INTERNAL:- Specified by:
characters
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Specified by:
characters
in classMarshalRecord
- Parameters:
value
- This is the entire value of the text node.
-
cdata
public void cdata(java.lang.String value)
INTERNAL:- Specified by:
cdata
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord
- Specified by:
cdata
in classMarshalRecord
- Parameters:
value
- This is the value of the text to be wrapped
-
node
public 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.- Specified by:
node
in classMarshalRecord
- Parameters:
node
- The Node to be added to the documentnamespaceResolver
- The NamespaceResolver can be used to resolve the namespace URI/prefix of the nodeuri
- replacement root name for the nodename
- replacement root namespace for the node namespace URI/prefix of the node
-
resolveNamespacePrefix
public java.lang.String resolveNamespacePrefix(org.eclipse.persistence.internal.oxm.XPathFragment frag, org.eclipse.persistence.internal.oxm.NamespaceResolver resolver)
-
resolveNamespacePrefix
public java.lang.String resolveNamespacePrefix(java.lang.String s)
- Specified by:
resolveNamespacePrefix
in interfaceorg.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord
- Overrides:
resolveNamespacePrefix
in classorg.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl
-
-