com.sun.xml.bind.v2.runtime
Class MarshallerImpl

java.lang.Object
  extended by javax.xml.bind.helpers.AbstractMarshallerImpl
      extended by com.sun.xml.bind.v2.runtime.MarshallerImpl
All Implemented Interfaces:
javax.xml.bind.Marshaller, javax.xml.bind.ValidationEventHandler

public final class MarshallerImpl
extends javax.xml.bind.helpers.AbstractMarshallerImpl
implements javax.xml.bind.ValidationEventHandler

Implementation of Marshaller interface for the JAXB RI.

Eventually all the marshal(java.lang.Object, java.io.OutputStream, javax.xml.namespace.NamespaceContext) methods call into the write(com.sun.xml.bind.v2.runtime.Name, com.sun.xml.bind.v2.runtime.JaxBeanInfo, T, com.sun.xml.bind.v2.runtime.output.XmlOutput, java.lang.Runnable) method.


Nested Class Summary
 
Nested classes/interfaces inherited from interface javax.xml.bind.Marshaller
javax.xml.bind.Marshaller.Listener
 
Field Summary
protected static java.lang.String C14N
           
protected static java.lang.String ENCODING_HANDLER
           
protected static java.lang.String ENCODING_HANDLER2
           
protected static java.lang.String INDENT_STRING
           
protected static java.lang.String OBJECT_IDENTITY_CYCLE_DETECTION
           
protected static java.lang.String PREFIX_MAPPER
           
protected  XMLSerializer serializer
           
protected static java.lang.String XML_HEADERS
           
protected static java.lang.String XMLDECLARATION
           
 
Fields inherited from interface javax.xml.bind.Marshaller
JAXB_ENCODING, JAXB_FORMATTED_OUTPUT, JAXB_FRAGMENT, JAXB_NO_NAMESPACE_SCHEMA_LOCATION, JAXB_SCHEMA_LOCATION
 
Constructor Summary
MarshallerImpl(JAXBContextImpl c, AssociationMap assoc)
           
 
Method Summary
protected  CharacterEscapeHandler createEscapeHandler(java.lang.String encoding)
           
 XmlOutput createWriter(java.io.OutputStream os)
           
 XmlOutput createWriter(java.io.OutputStream os, java.lang.String encoding)
           
 XmlOutput createWriter(java.io.Writer w)
           
 XmlOutput createWriter(java.io.Writer w, java.lang.String encoding)
           
<A extends javax.xml.bind.annotation.adapters.XmlAdapter>
A
getAdapter(java.lang.Class<A> type)
           
 javax.xml.bind.attachment.AttachmentMarshaller getAttachmentMarshaller()
           
 JAXBContextImpl getContext()
           
 javax.xml.bind.Marshaller.Listener getListener()
           
 java.lang.Object getProperty(java.lang.String name)
           
 javax.xml.validation.Schema getSchema()
           
 boolean handleEvent(javax.xml.bind.ValidationEvent event)
          Default error handling behavior fot Marshaller.
 void marshal(java.lang.Object obj, java.io.OutputStream out, javax.xml.namespace.NamespaceContext inscopeNamespace)
          Marshals to OutputStream with the given in-scope namespaces taken into account.
 void marshal(java.lang.Object target, javax.xml.transform.Result result)
           
 void marshal(java.lang.Object obj, javax.xml.stream.XMLEventWriter writer)
           
 void marshal(java.lang.Object obj, XmlOutput output)
           
 void marshal(java.lang.Object obj, javax.xml.stream.XMLStreamWriter writer)
           
<A extends javax.xml.bind.annotation.adapters.XmlAdapter>
void
setAdapter(java.lang.Class<A> type, A adapter)
           
 void setAttachmentMarshaller(javax.xml.bind.attachment.AttachmentMarshaller am)
           
 void setListener(javax.xml.bind.Marshaller.Listener listener)
           
 void setProperty(java.lang.String name, java.lang.Object value)
           
 void setSchema(javax.xml.validation.Schema s)
           
protected
<T> void
write(Name rootTagName, JaxBeanInfo<T> bi, T obj, XmlOutput out, java.lang.Runnable postInitAction)
          Used by BridgeImpl to write an arbitrary object as a fragment.
 
Methods inherited from class javax.xml.bind.helpers.AbstractMarshallerImpl
getEncoding, getEventHandler, getJavaEncoding, getNode, getNoNSSchemaLocation, getSchemaLocation, isFormattedOutput, isFragment, marshal, marshal, marshal, marshal, marshal, setAdapter, setEncoding, setEventHandler, setFormattedOutput, setFragment, setNoNSSchemaLocation, setSchemaLocation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serializer

protected final XMLSerializer serializer

INDENT_STRING

protected static final java.lang.String INDENT_STRING
See Also:
Constant Field Values

PREFIX_MAPPER

protected static final java.lang.String PREFIX_MAPPER
See Also:
Constant Field Values

ENCODING_HANDLER

protected static final java.lang.String ENCODING_HANDLER
See Also:
Constant Field Values

ENCODING_HANDLER2

protected static final java.lang.String ENCODING_HANDLER2
See Also:
Constant Field Values

XMLDECLARATION

protected static final java.lang.String XMLDECLARATION
See Also:
Constant Field Values

XML_HEADERS

protected static final java.lang.String XML_HEADERS
See Also:
Constant Field Values

C14N

protected static final java.lang.String C14N
See Also:
Constant Field Values

OBJECT_IDENTITY_CYCLE_DETECTION

protected static final java.lang.String OBJECT_IDENTITY_CYCLE_DETECTION
See Also:
Constant Field Values
Constructor Detail

MarshallerImpl

public MarshallerImpl(JAXBContextImpl c,
                      AssociationMap assoc)
Parameters:
assoc - non-null if the marshaller is working inside BinderImpl.
Method Detail

getContext

public JAXBContextImpl getContext()

marshal

public void marshal(java.lang.Object obj,
                    java.io.OutputStream out,
                    javax.xml.namespace.NamespaceContext inscopeNamespace)
             throws javax.xml.bind.JAXBException
Marshals to OutputStream with the given in-scope namespaces taken into account.

Throws:
javax.xml.bind.JAXBException
Since:
2.1.5

marshal

public void marshal(java.lang.Object obj,
                    javax.xml.stream.XMLStreamWriter writer)
             throws javax.xml.bind.JAXBException
Specified by:
marshal in interface javax.xml.bind.Marshaller
Overrides:
marshal in class javax.xml.bind.helpers.AbstractMarshallerImpl
Throws:
javax.xml.bind.JAXBException

marshal

public void marshal(java.lang.Object obj,
                    javax.xml.stream.XMLEventWriter writer)
             throws javax.xml.bind.JAXBException
Specified by:
marshal in interface javax.xml.bind.Marshaller
Overrides:
marshal in class javax.xml.bind.helpers.AbstractMarshallerImpl
Throws:
javax.xml.bind.JAXBException

marshal

public void marshal(java.lang.Object obj,
                    XmlOutput output)
             throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

marshal

public void marshal(java.lang.Object target,
                    javax.xml.transform.Result result)
             throws javax.xml.bind.JAXBException
Specified by:
marshal in interface javax.xml.bind.Marshaller
Throws:
javax.xml.bind.JAXBException

write

protected final <T> void write(Name rootTagName,
                               JaxBeanInfo<T> bi,
                               T obj,
                               XmlOutput out,
                               java.lang.Runnable postInitAction)
                    throws javax.xml.bind.JAXBException
Used by BridgeImpl to write an arbitrary object as a fragment.

Throws:
javax.xml.bind.JAXBException

createEscapeHandler

protected CharacterEscapeHandler createEscapeHandler(java.lang.String encoding)

createWriter

public XmlOutput createWriter(java.io.Writer w,
                              java.lang.String encoding)

createWriter

public XmlOutput createWriter(java.io.Writer w)

createWriter

public XmlOutput createWriter(java.io.OutputStream os)
                       throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

createWriter

public XmlOutput createWriter(java.io.OutputStream os,
                              java.lang.String encoding)
                       throws javax.xml.bind.JAXBException
Throws:
javax.xml.bind.JAXBException

getProperty

public java.lang.Object getProperty(java.lang.String name)
                             throws javax.xml.bind.PropertyException
Specified by:
getProperty in interface javax.xml.bind.Marshaller
Overrides:
getProperty in class javax.xml.bind.helpers.AbstractMarshallerImpl
Throws:
javax.xml.bind.PropertyException

setProperty

public void setProperty(java.lang.String name,
                        java.lang.Object value)
                 throws javax.xml.bind.PropertyException
Specified by:
setProperty in interface javax.xml.bind.Marshaller
Overrides:
setProperty in class javax.xml.bind.helpers.AbstractMarshallerImpl
Throws:
javax.xml.bind.PropertyException

setAdapter

public <A extends javax.xml.bind.annotation.adapters.XmlAdapter> void setAdapter(java.lang.Class<A> type,
                                                                                 A adapter)
Specified by:
setAdapter in interface javax.xml.bind.Marshaller
Overrides:
setAdapter in class javax.xml.bind.helpers.AbstractMarshallerImpl

getAdapter

public <A extends javax.xml.bind.annotation.adapters.XmlAdapter> A getAdapter(java.lang.Class<A> type)
Specified by:
getAdapter in interface javax.xml.bind.Marshaller
Overrides:
getAdapter in class javax.xml.bind.helpers.AbstractMarshallerImpl

setAttachmentMarshaller

public void setAttachmentMarshaller(javax.xml.bind.attachment.AttachmentMarshaller am)
Specified by:
setAttachmentMarshaller in interface javax.xml.bind.Marshaller
Overrides:
setAttachmentMarshaller in class javax.xml.bind.helpers.AbstractMarshallerImpl

getAttachmentMarshaller

public javax.xml.bind.attachment.AttachmentMarshaller getAttachmentMarshaller()
Specified by:
getAttachmentMarshaller in interface javax.xml.bind.Marshaller
Overrides:
getAttachmentMarshaller in class javax.xml.bind.helpers.AbstractMarshallerImpl

getSchema

public javax.xml.validation.Schema getSchema()
Specified by:
getSchema in interface javax.xml.bind.Marshaller
Overrides:
getSchema in class javax.xml.bind.helpers.AbstractMarshallerImpl

setSchema

public void setSchema(javax.xml.validation.Schema s)
Specified by:
setSchema in interface javax.xml.bind.Marshaller
Overrides:
setSchema in class javax.xml.bind.helpers.AbstractMarshallerImpl

handleEvent

public boolean handleEvent(javax.xml.bind.ValidationEvent event)
Default error handling behavior fot Marshaller.

Specified by:
handleEvent in interface javax.xml.bind.ValidationEventHandler

getListener

public javax.xml.bind.Marshaller.Listener getListener()
Specified by:
getListener in interface javax.xml.bind.Marshaller
Overrides:
getListener in class javax.xml.bind.helpers.AbstractMarshallerImpl

setListener

public void setListener(javax.xml.bind.Marshaller.Listener listener)
Specified by:
setListener in interface javax.xml.bind.Marshaller
Overrides:
setListener in class javax.xml.bind.helpers.AbstractMarshallerImpl