Class FormattedOutputStreamRecord
- All Implemented Interfaces:
AbstractMarshalRecord<CoreAbstractSession,
,CoreField, XMLMarshaller, NamespaceResolver> MarshalRecord<CoreAbstractSession,
,CoreField, XMLMarshaller, NamespaceResolver> XMLRecord<CoreAbstractSession>
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:
-
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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
INTERNAL:void
characters
(String value) INTERNAL:void
element
(XPathFragment frag) INTERNAL:void
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
INTERNALMethods 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
-
Constructor Details
-
FormattedOutputStreamRecord
public FormattedOutputStreamRecord()
-
-
Method Details
-
endDocument
public void endDocument()INTERNAL:- Overrides:
endDocument
in classOutputStreamRecord
-
startDocument
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
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
INTERNAL:- Overrides:
element
in classOutputStreamRecord
- Parameters:
frag
- The XPathFragment of the element
-
endElement
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
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
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
-