Class FormattedOutputStreamRecord
- java.lang.Object
-
- org.eclipse.persistence.internal.core.sessions.CoreAbstractRecord
-
- org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,MARSHALLER,NamespaceResolver>
-
- org.eclipse.persistence.oxm.record.MarshalRecord<XMLMarshaller>
-
- org.eclipse.persistence.oxm.record.OutputStreamRecord
-
- org.eclipse.persistence.oxm.record.FormattedOutputStreamRecord
-
- All Implemented Interfaces:
AbstractMarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
,MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
,XMLRecord<CoreAbstractSession>
public class FormattedOutputStreamRecord extends OutputStreamRecord
Use this type of MarshalRecord when the marshal target is an OutputStream and the XML should be formatted with carriage returns and indenting. This type is only used if the encoding of the OutputStream is UTF-8
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
FormattedOutputStreamRecord record = new FormattedOutputStreamRecord();
record.setOutputStream(myOutputStream);
xmlMarshaller.marshal(myObject, record);
If the marshal(OutputStream) and setFormattedOutput(true) method is called on XMLMarshaller and the encoding is UTF-8, then the OutputStream is automatically wrapped in a FormattedOutputStreamRecord.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
xmlMarshaller xmlMarshaller.setFormattedOutput(true);
xmlMarshaller.marshal(myObject, myOutputStream);
- See Also:
XMLMarshaller
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.persistence.oxm.record.OutputStreamRecord
OutputStreamRecord.OutputStreamRecordContentHandler
-
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.OutputStreamRecord
AMP, CLOSE_ATTRIBUTE_VALUE, CLOSE_CDATA, CLOSE_COMMENT, CLOSE_ELEMENT, CLOSE_PI, ENCODING, GT, isProcessingCData, isStartElementOpen, LT, OPEN_CDATA, OPEN_COMMENT, OPEN_ENCODING_ATTRIBUTE, OPEN_START_ELEMENT, OPEN_XML_PI_AND_VERSION_ATTRIBUTE, outputStream, QUOT, SLASH_N, SLASH_R, SPACE
-
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
Constructors Constructor Description FormattedOutputStreamRecord()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
cdata(String value)
INTERNAL:void
characters(String value)
INTERNAL:void
element(XPathFragment frag)
INTERNAL:void
endDocument()
INTERNAL:void
endElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
INTERNAL:void
node(Node node, NamespaceResolver namespaceResolver, String newNamespace, String newName)
Receive notification of a node.void
openStartElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
INTERNAL:void
startDocument(String encoding, String version)
INTERNAL:void
writeHeader()
INTERNAL-
Methods inherited from class org.eclipse.persistence.oxm.record.OutputStreamRecord
attribute, attribute, closeStartElement, flush, getOutputStream, outputStreamWrite, outputStreamWrite, outputStreamWrite, outputStreamWrite, setOutputStream, startPrefixMappings, writeValue, writeValue
-
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, endPrefixMapping, endPrefixMappings, forceValueWrapper, getCurrentAttributeGroup, getCycleDetectionStack, getDocument, getDOM, getGroupingElements, getLocalName, getNameForFragment, getNamespaceURI, getPositionalNodes, getPrefixBytes, getPrefixForFragment, getStringForQName, getTextWrapperFragment, getValueToWrite, isWrapperAsCollectionName, marshalWithoutRootElement, namespaceDeclaration, namespaceDeclarations, nilComplex, nilSimple, node, openStartGroupingElements, popAttributeGroup, predicateAttribute, processNamespaceResolverForXSIPrefix, pushAttributeGroup, put, removeGroupingElement, setGroupingElement, setSession, startCollection, startPrefixMapping, transformToXML
-
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, 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.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.MarshalRecord
attributeWithoutQName, hasCustomNamespaceMapper, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, setLeafElementType, setMarshaller
-
Methods inherited from interface org.eclipse.persistence.internal.oxm.record.XMLRecord
getConversionManager, getNamespaceSeparator, getSession
-
-
-
-
Method Detail
-
endDocument
public void endDocument()
INTERNAL:- Overrides:
endDocument
in classOutputStreamRecord
-
startDocument
public void startDocument(String encoding, String version)
INTERNAL:- Overrides:
startDocument
in classOutputStreamRecord
- Parameters:
encoding
- The XML document will be encoded using this encoding.version
- This specifies the version of XML.
-
writeHeader
public void writeHeader()
INTERNAL- Overrides:
writeHeader
in classOutputStreamRecord
-
openStartElement
public void openStartElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
INTERNAL:- Specified by:
openStartElement
in interfaceMarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
- Overrides:
openStartElement
in classOutputStreamRecord
- 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(XPathFragment frag)
INTERNAL:- Overrides:
element
in classOutputStreamRecord
- Parameters:
frag
- The XPathFragment of the element
-
endElement
public void endElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
INTERNAL:- Specified by:
endElement
in interfaceMarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
- Overrides:
endElement
in classOutputStreamRecord
- 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(String value)
INTERNAL:- Specified by:
characters
in interfaceMarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
- Overrides:
characters
in classOutputStreamRecord
- Parameters:
value
- This is the entire value of the text node.
-
cdata
public void cdata(String value)
INTERNAL:- Specified by:
cdata
in interfaceMarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
- Overrides:
cdata
in classOutputStreamRecord
- Parameters:
value
- This is the value of the text to be wrapped
-
node
public void node(Node node, NamespaceResolver namespaceResolver, String newNamespace, String newName)
Receive notification of a node.- Overrides:
node
in classOutputStreamRecord
- Parameters:
node
- The Node to be added to the documentnamespaceResolver
- The NamespaceResolver can be used to resolve the namespace URI/prefix of the nodenewNamespace
- replacement root name for the nodenewName
- replacement root namespace for the node namespace URI/prefix of the node
-
-