Class JSONWriterRecord
- 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.internal.oxm.XMLMarshaller>
-
- org.eclipse.persistence.oxm.record.JSONWriterRecord
-
- All Implemented Interfaces:
org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
,org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
,org.eclipse.persistence.internal.oxm.record.XMLRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession>
- Direct Known Subclasses:
JSONFormattedWriterRecord
public class JSONWriterRecord extends MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
Use this type of MarshalRecord when the marshal target is a Writer and the JSON should not be formatted with carriage returns or indenting.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
JSONRecord jsonWriterRecord = new JSONWriterRecord();
jsonWriterRecord.setWriter(myWriter);
xmlMarshaller.marshal(myObject, jsonWriterRecord);
If the marshal(Writer) and setMediaType(MediaType.APPLICATION_JSON) and setFormattedOutput(false) method is called on XMLMarshaller, then the Writer is automatically wrapped in a JSONWriterRecord.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
xmlMarshaller.setMediaType(MediaType.APPLICATION_JSON); xmlMarshaller xmlMarshaller.setFormattedOutput(false);
xmlMarshaller.marshal(myObject, myWriter);
- See Also:
XMLMarshaller
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
JSONWriterRecord.JSONWriterRecordContentHandler
This class will typically be used in conjunction with an XMLFragmentReader.protected static class
JSONWriterRecord.Level
Instances of this class are used to maintain state about the current level of the JSON message being marshalled.protected static interface
JSONWriterRecord.Output
protected static class
JSONWriterRecord.OutputStreamOutput
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
attributePrefix
protected java.lang.String
callbackName
protected org.eclipse.persistence.internal.oxm.CharacterEscapeHandler
characterEscapeHandler
protected boolean
charactersAllowed
protected java.nio.charset.CharsetEncoder
encoder
protected boolean
isProcessingCData
protected JSONWriterRecord.Level
level
protected static java.lang.String
NULL
protected JSONWriterRecord.Output
writer
-
Fields inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
COLON_W_SCHEMA_NIL_ATTRIBUTE, textWrapperFragment, TRUE
-
-
Constructor Summary
Constructors Constructor Description JSONWriterRecord()
JSONWriterRecord(java.io.OutputStream outputStream)
JSONWriterRecord(java.io.OutputStream outputStream, java.lang.String callbackName)
JSONWriterRecord(java.io.Writer writer)
JSONWriterRecord(java.io.Writer writer, java.lang.String callbackName)
-
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.Object value, javax.xml.namespace.QName schemaType)
Convert the value if necessary and write out the attribute and converted value.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
characters(java.lang.String value, boolean isString, boolean isAttribute)
INTERNAL:void
characters(javax.xml.namespace.QName schemaType, java.lang.Object value, java.lang.String mimeType, boolean isCDATA)
Convert the value if necessary and write out the converted value.void
characters(javax.xml.namespace.QName schemaType, java.lang.Object value, java.lang.String mimeType, boolean isCDATA, boolean isAttribute)
protected void
closeComplex()
void
closeStartElement()
INTERNAL:void
defaultNamespaceDeclaration(java.lang.String defaultNamespace)
Add the defaultNamespace declarationvoid
element(org.eclipse.persistence.internal.oxm.XPathFragment frag)
INTERNAL:void
emptyAttribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
Used when an nil attribute should be writtenboolean
emptyCollection(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, boolean openGrouping)
Handle marshal of an empty collection.void
emptyComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
Used when an empty complex item should be writtenvoid
emptySimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
Used when an empty simple value should be writtenprotected void
endCallback()
void
endCollection()
This method is used to inform the MarshalRecord that it is done receiving element events that are part of a collection.void
endDocument()
INTERNAL:void
endElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:protected void
endEmptyCollection()
void
endPrefixMappings(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL: override so we don't iterate over namespaces when endPrefixMapping doesn't do anythingvoid
flush()
void
forceValueWrapper()
char
getNamespaceSeparator()
INTERNAL: The character used to separate the prefix and uri portions when namespaces are presentprotected java.lang.String
getStringForQName(javax.xml.namespace.QName qName)
org.eclipse.persistence.internal.oxm.XPathFragment
getTextWrapperFragment()
INTERNAL: The optional fragment used to wrap the text() mappingsjava.io.Writer
getWriter()
Return the Writer that the object will be marshalled to.boolean
isWrapperAsCollectionName()
void
marshalWithoutRootElement(org.eclipse.persistence.internal.oxm.ObjectBuilder treeObjectBuilder, java.lang.Object object, org.eclipse.persistence.internal.oxm.mappings.Descriptor descriptor, org.eclipse.persistence.internal.oxm.Root root, boolean isXMLRoot)
INTERNAL:void
namespaceDeclaration(java.lang.String prefix, java.lang.String namespaceURI)
Add the specified namespace declarationvoid
namespaceDeclarations(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:void
nilComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:void
nilSimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL: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
setCallbackName(java.lang.String callbackName)
void
setMarshaller(org.eclipse.persistence.internal.oxm.XMLMarshaller marshaller)
INTERNAL:void
setWriter(java.io.Writer writer)
Set the Writer that the object will be marshalled to.protected void
startCallback()
INTERNAL:void
startCollection()
This method is used to inform the MarshalRecord that the element events it is about to receive are part of a collection.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 anythingprotected void
writeKey(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment)
protected void
writeListSeparator()
protected void
writeSeparator()
protected void
writeValue(java.lang.String value, boolean isAttribute)
INTERNAL:-
Methods inherited from class org.eclipse.persistence.oxm.record.MarshalRecord
add, addGroupingElement, addPositionalNodes, afterContainmentMarshal, beforeContainmentMarshal, clear, closeStartGroupingElements, endPrefixMapping, getCurrentAttributeGroup, getCycleDetectionStack, getDocument, getDOM, getGroupingElements, getLocalName, getNameForFragment, getNamespaceURI, getPositionalNodes, getPrefixBytes, getPrefixForFragment, getValueToWrite, node, openStartGroupingElements, popAttributeGroup, predicateAttribute, processNamespaceResolverForXSIPrefix, pushAttributeGroup, put, removeGroupingElement, setGroupingElement, setSession, startPrefixMapping, transformToXML, writeHeader
-
Methods inherited from class org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl
addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, attributeWithoutQName, getConversionManager, getLeafElementType, getMarshaller, getNamespaceResolver, getOwningObject, getSession, hasCustomNamespaceMapper, hasEqualNamespaceResolvers, isNamespaceAware, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setLeafElementType, 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, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute
-
-
-
-
Field Detail
-
isProcessingCData
protected boolean isProcessingCData
-
NULL
protected static final java.lang.String NULL
- See Also:
- Constant Field Values
-
attributePrefix
protected java.lang.String attributePrefix
-
charactersAllowed
protected boolean charactersAllowed
-
encoder
protected java.nio.charset.CharsetEncoder encoder
-
characterEscapeHandler
protected org.eclipse.persistence.internal.oxm.CharacterEscapeHandler characterEscapeHandler
-
callbackName
protected java.lang.String callbackName
-
writer
protected JSONWriterRecord.Output writer
-
level
protected JSONWriterRecord.Level level
-
-
Constructor Detail
-
JSONWriterRecord
public JSONWriterRecord()
-
JSONWriterRecord
public JSONWriterRecord(java.io.OutputStream outputStream)
-
JSONWriterRecord
public JSONWriterRecord(java.io.OutputStream outputStream, java.lang.String callbackName)
-
JSONWriterRecord
public JSONWriterRecord(java.io.Writer writer)
-
JSONWriterRecord
public JSONWriterRecord(java.io.Writer writer, java.lang.String callbackName)
-
-
Method Detail
-
setCallbackName
public void setCallbackName(java.lang.String callbackName)
-
setMarshaller
public void setMarshaller(org.eclipse.persistence.internal.oxm.XMLMarshaller marshaller)
INTERNAL:- Specified by:
setMarshaller
in interfaceorg.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
setMarshaller
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
setMarshaller
in classorg.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
-
emptyCollection
public boolean emptyCollection(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, boolean openGrouping)
Handle marshal of an empty collection.- Specified by:
emptyCollection
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
emptyCollection
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Parameters:
xPathFragment
-namespaceResolver
-openGrouping
- if grouping elements should be marshalled for empty collections- Returns:
-
forceValueWrapper
public void forceValueWrapper()
- Specified by:
forceValueWrapper
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
forceValueWrapper
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
getWriter
public java.io.Writer getWriter()
Return the Writer that the object will be marshalled to.- Returns:
- The marshal target.
-
setWriter
public void setWriter(java.io.Writer writer)
Set the Writer that the object will be marshalled to.- Parameters:
writer
- The marshal target.
-
namespaceDeclaration
public void namespaceDeclaration(java.lang.String prefix, java.lang.String namespaceURI)
Description copied from class:MarshalRecord
Add the specified namespace declaration- Specified by:
namespaceDeclaration
in interfaceorg.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
namespaceDeclaration
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
namespaceDeclaration
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
defaultNamespaceDeclaration
public void defaultNamespaceDeclaration(java.lang.String defaultNamespace)
Description copied from class:MarshalRecord
Add the defaultNamespace declaration- Overrides:
defaultNamespaceDeclaration
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
startDocument
public void startDocument(java.lang.String encoding, java.lang.String version)
INTERNAL:- Specified by:
startDocument
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Parameters:
encoding
- The XML document will be encoded using this encoding.version
- This specifies the version of XML.
-
writeListSeparator
protected void writeListSeparator() throws java.io.IOException
- Throws:
java.io.IOException
-
writeSeparator
protected void writeSeparator() throws java.io.IOException
- Throws:
java.io.IOException
-
startCallback
protected void startCallback() throws java.io.IOException
INTERNAL:- Throws:
java.io.IOException
-
endDocument
public void endDocument()
INTERNAL:- Specified by:
endDocument
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
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<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
openStartElement
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- 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<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Parameters:
frag
- The XPathFragment of the element
-
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<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
attribute
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
attribute
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- 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.
-
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<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
attribute
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- 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.
-
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 classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
endPrefixMappings
public void endPrefixMappings(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL: override so we don't iterate over namespaces when endPrefixMapping doesn't do anything- Overrides:
endPrefixMappings
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
closeStartElement
public void closeStartElement()
INTERNAL:- Specified by:
closeStartElement
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
closeStartElement
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
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<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
endElement
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- 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).
-
closeComplex
protected void closeComplex() throws java.io.IOException
- Throws:
java.io.IOException
-
startCollection
public void startCollection()
Description copied from class:MarshalRecord
This method is used to inform the MarshalRecord that the element events it is about to receive are part of a collection.- Specified by:
startCollection
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
startCollection
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- See Also:
MarshalRecord.endCollection()
-
endEmptyCollection
protected void endEmptyCollection()
-
endCallback
protected void endCallback() throws java.io.IOException
- Throws:
java.io.IOException
-
endCollection
public void endCollection()
Description copied from class:MarshalRecord
This method is used to inform the MarshalRecord that it is done receiving element events that are part of a collection.- Specified by:
endCollection
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
endCollection
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- See Also:
MarshalRecord.startCollection()
-
characters
public void characters(java.lang.String value)
INTERNAL:- Specified by:
characters
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
characters
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Parameters:
value
- This is the entire value of the text node.
-
characters
public void characters(java.lang.String value, boolean isString, boolean isAttribute)
INTERNAL:
-
attribute
public void attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver, java.lang.Object value, javax.xml.namespace.QName schemaType)
Description copied from class:MarshalRecord
Convert the value if necessary and write out the attribute and converted value.- Specified by:
attribute
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
attribute
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
characters
public void characters(javax.xml.namespace.QName schemaType, java.lang.Object value, java.lang.String mimeType, boolean isCDATA)
Description copied from class:MarshalRecord
Convert the value if necessary and write out the converted value.- Specified by:
characters
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
characters
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
characters
public void characters(javax.xml.namespace.QName schemaType, java.lang.Object value, java.lang.String mimeType, boolean isCDATA, boolean isAttribute)
-
namespaceDeclarations
public void namespaceDeclarations(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:- Overrides:
namespaceDeclarations
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Parameters:
namespaceResolver
- The NamespaceResolver contains the namespace prefix and URI pairings that need to be declared.
-
nilComplex
public void nilComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:- Specified by:
nilComplex
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
nilComplex
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
nilSimple
public void nilSimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:- Specified by:
nilSimple
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
nilSimple
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
emptySimple
public void emptySimple(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
Used when an empty simple value should be written- Specified by:
emptySimple
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
emptySimple
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Since:
- EclipseLink 2.4
-
emptyAttribute
public void emptyAttribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
Description copied from class:MarshalRecord
Used when an nil attribute should be written- Specified by:
emptyAttribute
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
emptyAttribute
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
emptyComplex
public void emptyComplex(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment, org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
Used when an empty complex item should be written- Specified by:
emptyComplex
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
emptyComplex
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Since:
- EclipseLink 2.4
-
marshalWithoutRootElement
public void marshalWithoutRootElement(org.eclipse.persistence.internal.oxm.ObjectBuilder treeObjectBuilder, java.lang.Object object, org.eclipse.persistence.internal.oxm.mappings.Descriptor descriptor, org.eclipse.persistence.internal.oxm.Root root, boolean isXMLRoot)
INTERNAL:- Overrides:
marshalWithoutRootElement
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
cdata
public void cdata(java.lang.String value)
INTERNAL:- Specified by:
cdata
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Specified by:
cdata
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Parameters:
value
- This is the value of the text to be wrapped
-
getNamespaceSeparator
public char getNamespaceSeparator()
INTERNAL: The character used to separate the prefix and uri portions when namespaces are present- Specified by:
getNamespaceSeparator
in interfaceorg.eclipse.persistence.internal.oxm.record.XMLRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession>
- Overrides:
getNamespaceSeparator
in classorg.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Since:
- 2.4
-
getTextWrapperFragment
public org.eclipse.persistence.internal.oxm.XPathFragment getTextWrapperFragment()
INTERNAL: The optional fragment used to wrap the text() mappings- Specified by:
getTextWrapperFragment
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
getTextWrapperFragment
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- Since:
- 2.4
-
writeKey
protected void writeKey(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment) throws java.io.IOException
- Throws:
java.io.IOException
-
writeValue
protected void writeValue(java.lang.String value, boolean isAttribute)
INTERNAL:
-
getStringForQName
protected java.lang.String getStringForQName(javax.xml.namespace.QName qName)
- Overrides:
getStringForQName
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
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<org.eclipse.persistence.internal.oxm.XMLMarshaller>
- 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
-
isWrapperAsCollectionName
public boolean isWrapperAsCollectionName()
- Specified by:
isWrapperAsCollectionName
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
isWrapperAsCollectionName
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
flush
public void flush()
- Specified by:
flush
in interfaceorg.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.core.helper.CoreField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>
- Overrides:
flush
in classMarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
-
-