public class WriterRecord extends MarshalRecord<XMLMarshaller>
Use this type of MarshalRecord when the marshal target is a Writer and the XML should not be formatted with carriage returns or indenting.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
WriterRecord writerRecord = new WriterRecord();
writerRecord.setWriter(myWriter);
xmlMarshaller.marshal(myObject, writerRecord);
If the marshal(Writer) and setFormattedOutput(false) method is called on XMLMarshaller, then the Writer is automatically wrapped in a WriterRecord.
XMLContext xmlContext = new XMLContext("session-name");
XMLMarshaller xmlMarshaller = xmlContext.createMarshaller();
xmlMarshaller xmlMarshaller.setFormattedOutput(false);
xmlMarshaller.marshal(myObject, myWriter);
XMLMarshaller
MarshalRecord.CycleDetectionStack<E>
XMLRecord.Nil
DEFAULT_ATTRIBUTE_GROUP, NIL
Constructor and Description |
---|
WriterRecord() |
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(XPathFragment xPathFragment,
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(XPathFragment frag)
INTERNAL:
|
void |
endDocument()
INTERNAL:
|
void |
endElement(XPathFragment xPathFragment,
NamespaceResolver namespaceResolver)
INTERNAL:
|
void |
flush() |
java.io.Writer |
getWriter()
Return the Writer that the object will be marshalled to.
|
void |
node(org.w3c.dom.Node node,
NamespaceResolver namespaceResolver,
java.lang.String newNamespace,
java.lang.String newName)
Receive notification of a node.
|
void |
openStartElement(XPathFragment xPathFragment,
NamespaceResolver namespaceResolver)
INTERNAL:
|
void |
setMarshaller(XMLMarshaller marshaller) |
void |
setWriter(java.io.Writer writer)
Set the Writer that the object will be marshalled to.
|
void |
startDocument(java.lang.String encoding,
java.lang.String version)
INTERNAL:
|
void |
startPrefixMappings(NamespaceResolver namespaceResolver)
INTERNAL:
override so we don't iterate over namespaces when startPrefixMapping doesn't do anything
|
void |
writeHeader()
INTERNAL
|
add, addGroupingElement, afterContainmentMarshal, attribute, beforeContainmentMarshal, characters, clear, closeStartGroupingElements, defaultNamespaceDeclaration, emptyAttribute, emptyCollection, emptyComplex, emptySimple, endCollection, endPrefixMapping, endPrefixMappings, forceValueWrapper, getCurrentAttributeGroup, getCycleDetectionStack, getDocument, getDOM, getGroupingElements, getLocalName, getNamespaceURI, getPositionalNodes, getTextWrapperFragment, getValueToWrite, isWrapperAsCollectionName, marshalWithoutRootElement, namespaceDeclaration, namespaceDeclarations, nilComplex, nilSimple, node, openStartGroupingElements, popAttributeGroup, predicateAttribute, pushAttributeGroup, put, removeGroupingElement, setGroupingElement, setSession, startCollection, startPrefixMapping, transformToXML
addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, attributeWithoutQName, getConversionManager, getLeafElementType, getMarshaller, getNamespaceResolver, getNamespaceSeparator, getOwningObject, getSession, hasCustomNamespaceMapper, hasEqualNamespaceResolvers, isNamespaceAware, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
attributeWithoutQName, hasCustomNamespaceMapper, isXOPPackage, removeExtraNamespacesFromNamespaceResolver, setLeafElementType
addExtraNamespacesToNamespaceResolver, addXsiTypeAndClassIndicatorIfRequired, addXsiTypeAndClassIndicatorIfRequired, getLeafElementType, getMarshaller, getNamespaceResolver, getOwningObject, hasEqualNamespaceResolvers, isNamespaceAware, resolveNamespacePrefix, setCustomNamespaceMapper, setEqualNamespaceResolvers, setLeafElementType, setNamespaceResolver, setOwningObject, setXOPPackage, writeXsiTypeAttribute, writeXsiTypeAttribute
getConversionManager, getNamespaceSeparator, getSession
public java.io.Writer getWriter()
public void setWriter(java.io.Writer writer)
writer
- The marshal target.public void startDocument(java.lang.String encoding, java.lang.String version)
startDocument
in class MarshalRecord<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<XMLMarshaller>
public void endDocument()
endDocument
in class MarshalRecord<XMLMarshaller>
public void openStartElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
openStartElement
in interface MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
openStartElement
in class MarshalRecord<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(XPathFragment frag)
element
in class MarshalRecord<XMLMarshaller>
frag
- The XPathFragment of the elementpublic void attribute(XPathFragment xPathFragment, NamespaceResolver namespaceResolver, java.lang.String value)
attribute
in interface MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
attribute
in class MarshalRecord<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 startPrefixMappings(NamespaceResolver namespaceResolver)
startPrefixMappings
in class MarshalRecord<XMLMarshaller>
public void attribute(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, java.lang.String value)
attribute
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
attribute
in interface MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
attribute
in class MarshalRecord<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 MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
closeStartElement
in class MarshalRecord<XMLMarshaller>
public void endElement(XPathFragment xPathFragment, NamespaceResolver namespaceResolver)
endElement
in interface MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
endElement
in class MarshalRecord<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 MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
characters
in class MarshalRecord<XMLMarshaller>
value
- This is the entire value of the text node.public void cdata(java.lang.String value)
cdata
in interface MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
cdata
in class MarshalRecord<XMLMarshaller>
value
- This is the value of the text to be wrappedpublic void node(org.w3c.dom.Node node, NamespaceResolver namespaceResolver, java.lang.String newNamespace, java.lang.String newName)
node
in class MarshalRecord<XMLMarshaller>
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 nodepublic void setMarshaller(XMLMarshaller marshaller)
setMarshaller
in interface AbstractMarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
setMarshaller
in interface MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
setMarshaller
in class AbstractMarshalRecordImpl<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
public void flush()
flush
in interface MarshalRecord<CoreAbstractSession,CoreField,XMLMarshaller,NamespaceResolver>
flush
in class MarshalRecord<XMLMarshaller>
EclipseLink 2.6.3, "build v20160428-59c81c5" API Reference