public class OutputStreamRecord extends MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>
Use this type of MarshalRecord when the marshal target is an OutputStream and the XML should not be formatted with carriage returns or 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();
OutputStreamRecord record = new OutputStreamRecord();
record.setOutputStream(myOutputStream);
xmlMarshaller.marshal(myObject, record);
If the marshal(OutputStream) and setFormattedOutput(false) method is called on XMLMarshaller and the encoding is UTF-8, then the OutputStream is automatically wrapped in an OutputStream.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
xmlMarshaller xmlMarshaller.setFormattedOutput(false);
xmlMarshaller.marshal(myObject, myOutputStream);
XMLMarshaller| Modifier and Type | Class and Description |
|---|---|
protected class |
OutputStreamRecord.OutputStreamRecordContentHandler
This class will typically be used in conjunction with an XMLFragmentReader.
|
MarshalRecord.CycleDetectionStack<E>| Modifier and Type | Field and Description |
|---|---|
protected static byte[] |
AMP |
protected static byte |
CLOSE_ATTRIBUTE_VALUE |
protected static byte[] |
CLOSE_CDATA |
protected static byte[] |
CLOSE_COMMENT |
protected static byte |
CLOSE_ELEMENT |
protected static byte[] |
CLOSE_PI |
protected static byte[] |
ENCODING |
protected boolean |
isProcessingCData |
protected boolean |
isStartElementOpen |
protected static byte[] |
LT |
protected static byte[] |
OPEN_CDATA |
protected static byte[] |
OPEN_COMMENT |
protected static byte[] |
OPEN_ENCODING_ATTRIBUTE |
protected static byte |
OPEN_START_ELEMENT |
protected static byte[] |
OPEN_XML_PI_AND_VERSION_ATTRIBUTE |
protected java.io.OutputStream |
outputStream |
protected static byte[] |
QUOT |
protected static byte[] |
SLASH_N |
protected static byte[] |
SLASH_R |
protected static byte |
SPACE |
COLON_W_SCHEMA_NIL_ATTRIBUTE, textWrapperFragment, TRUE| Constructor and Description |
|---|
OutputStreamRecord() |
| Modifier and Type | Method and 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 |
flush() |
java.io.OutputStream |
getOutputStream()
Return the OutputStream that the object will be marshalled to.
|
void |
node(org.w3c.dom.Node node,
org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver,
java.lang.String uri,
java.lang.String localName)
Receive notification of a node.
|
void |
openStartElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment,
org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
INTERNAL:
|
protected void |
outputStreamWrite(byte aByte) |
protected void |
outputStreamWrite(byte[] bytes) |
protected void |
outputStreamWrite(byte[] bytes,
java.io.OutputStream os) |
protected void |
outputStreamWrite(byte aByte,
java.io.OutputStream os) |
void |
setOutputStream(java.io.OutputStream outputStream)
Set the OutputStream that the object will be marshalled to.
|
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 anything
|
void |
writeHeader()
INTERNAL
|
protected void |
writeValue(java.lang.String value,
boolean escapeChars)
INTERNAL:
|
protected void |
writeValue(java.lang.String value,
boolean escapeChars,
boolean isAttribute,
java.io.OutputStream os)
INTERNAL:
|
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, transformToXMLaddExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, attributeWithoutQName, getLeafElementType, getMarshaller, getNamespaceResolver, getNamespaceSeparator, getOwningObject, getSession, hasCustomNamespaceMapper, hasEqualNamespaceResolvers, isNamespaceAware, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setLeafElementType, setMarshaller, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttributeclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitattributeWithoutQName, hasCustomNamespaceMapper, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, setLeafElementType, setMarshalleraddExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, getLeafElementType, getMarshaller, getNamespaceResolver, getOwningObject, hasEqualNamespaceResolvers, isNamespaceAware, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttributeprotected static final byte[] OPEN_XML_PI_AND_VERSION_ATTRIBUTE
protected static final byte[] OPEN_ENCODING_ATTRIBUTE
protected static final byte[] CLOSE_PI
protected static final byte SPACE
protected static final byte CLOSE_ATTRIBUTE_VALUE
protected static final byte[] OPEN_CDATA
protected static final byte[] CLOSE_CDATA
protected static final byte[] OPEN_COMMENT
protected static final byte[] CLOSE_COMMENT
protected static final byte OPEN_START_ELEMENT
protected static final byte CLOSE_ELEMENT
protected static final byte[] AMP
protected static final byte[] LT
protected static final byte[] QUOT
protected static final byte[] ENCODING
protected static final byte[] SLASH_N
protected static final byte[] SLASH_R
protected java.io.OutputStream outputStream
protected boolean isStartElementOpen
protected boolean isProcessingCData
public java.io.OutputStream getOutputStream()
public void setOutputStream(java.io.OutputStream outputStream)
writer - The marshal target.public void startPrefixMappings(org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
startPrefixMappings in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>public void startDocument(java.lang.String encoding,
java.lang.String version)
startDocument in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>encoding - The XML document will be encoded using this encoding.version - This specifies the version of XML.public void writeHeader()
writeHeader in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>public void endDocument()
endDocument in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>public void openStartElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment,
org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
openStartElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>openStartElement in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>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).public void element(org.eclipse.persistence.internal.oxm.XPathFragment frag)
element in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>frag - The XPathFragment of the elementpublic void attribute(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment,
org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver,
java.lang.String value)
attribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>attribute in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>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.public void attribute(java.lang.String namespaceURI,
java.lang.String localName,
java.lang.String qName,
java.lang.String value)
attribute in interface org.eclipse.persistence.internal.oxm.record.AbstractMarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>attribute in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>attribute in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>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.public void closeStartElement()
closeStartElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>closeStartElement in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>public void endElement(org.eclipse.persistence.internal.oxm.XPathFragment xPathFragment,
org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver)
endElement in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>endElement in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>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).public void characters(java.lang.String value)
characters in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>characters in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>value - This is the entire value of the text node.public void cdata(java.lang.String value)
cdata in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>cdata in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>value - This is the value of the text to be wrappedprotected void writeValue(java.lang.String value,
boolean escapeChars)
protected void writeValue(java.lang.String value,
boolean escapeChars,
boolean isAttribute,
java.io.OutputStream os)
public void node(org.w3c.dom.Node node,
org.eclipse.persistence.internal.oxm.NamespaceResolver namespaceResolver,
java.lang.String uri,
java.lang.String localName)
node in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>node - The Node to be added to the documentnamespaceResolver - The NamespaceResolver can be used to resolve the
namespace URI/prefix of the nodelocalName - replacement root namespace for the node
namespace URI/prefix of the nodepublic void flush()
flush in interface org.eclipse.persistence.internal.oxm.record.MarshalRecord<org.eclipse.persistence.internal.core.sessions.CoreAbstractSession,org.eclipse.persistence.internal.helper.DatabaseField,org.eclipse.persistence.internal.oxm.XMLMarshaller,org.eclipse.persistence.internal.oxm.NamespaceResolver>flush in class MarshalRecord<org.eclipse.persistence.internal.oxm.XMLMarshaller>protected void outputStreamWrite(byte[] bytes)
protected void outputStreamWrite(byte[] bytes,
java.io.OutputStream os)
protected void outputStreamWrite(byte aByte)
protected void outputStreamWrite(byte aByte,
java.io.OutputStream os)