org.springframework.oxm.support
Class MarshallingSource

java.lang.Object
  extended by javax.xml.transform.sax.SAXSource
      extended by org.springframework.oxm.support.MarshallingSource
All Implemented Interfaces:
javax.xml.transform.Source

public class MarshallingSource
extends javax.xml.transform.sax.SAXSource

Source implementation that uses a Marshaller.Can be constructed with a Marshaller and an object to be marshalled.

Even though MarshallingSource extends from SAXSource, calling the methods of SAXSource is not supported. In general, the only supported operation on this class is to use the XMLReader obtained via SAXSource.getXMLReader() to parse the input source obtained via SAXSource.getInputSource(). Calling setXMLReader(XMLReader) or setInputSource(InputSource) will result in UnsupportedOperationExceptions.

Since:
3.0
Author:
Arjen Poutsma
See Also:
Transformer

Nested Class Summary
private static class MarshallingSource.MarshallingXMLReader
           
 
Field Summary
private  java.lang.Object content
           
private  Marshaller marshaller
           
 
Fields inherited from class javax.xml.transform.sax.SAXSource
FEATURE
 
Constructor Summary
MarshallingSource(Marshaller marshaller, java.lang.Object content)
          Create a new MarshallingSource with the given marshaller and content.
 
Method Summary
 java.lang.Object getContent()
          Return the object to be marshalled.
 Marshaller getMarshaller()
          Return the Marshaller used by this MarshallingSource.
 void setInputSource(org.xml.sax.InputSource inputSource)
          Throws a UnsupportedOperationException.
 void setXMLReader(org.xml.sax.XMLReader reader)
          Throws a UnsupportedOperationException.
 
Methods inherited from class javax.xml.transform.sax.SAXSource
getInputSource, getSystemId, getXMLReader, setSystemId, sourceToInputSource
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

marshaller

private final Marshaller marshaller

content

private final java.lang.Object content
Constructor Detail

MarshallingSource

public MarshallingSource(Marshaller marshaller,
                         java.lang.Object content)
Create a new MarshallingSource with the given marshaller and content.

Parameters:
marshaller - the marshaller to use
content - the object to be marshalled
Method Detail

getMarshaller

public Marshaller getMarshaller()
Return the Marshaller used by this MarshallingSource.


getContent

public java.lang.Object getContent()
Return the object to be marshalled.


setInputSource

public void setInputSource(org.xml.sax.InputSource inputSource)
Throws a UnsupportedOperationException.

Overrides:
setInputSource in class javax.xml.transform.sax.SAXSource

setXMLReader

public void setXMLReader(org.xml.sax.XMLReader reader)
Throws a UnsupportedOperationException.

Overrides:
setXMLReader in class javax.xml.transform.sax.SAXSource