org.restlet.ext.jaxb
Class JaxbRepresentation<T>

java.lang.Object
  extended by org.restlet.representation.Variant
      extended by org.restlet.representation.RepresentationInfo
          extended by org.restlet.representation.Representation
              extended by org.restlet.representation.CharacterRepresentation
                  extended by org.restlet.representation.WriterRepresentation
                      extended by org.restlet.ext.jaxb.JaxbRepresentation<T>
Type Parameters:
T - The type to wrap.

public class JaxbRepresentation<T>
extends WriterRepresentation

An XML representation based on JAXB that provides easy translation between XML and JAXB element class trees.

Author:
Overstock.com, Jerome Louvel

Field Summary
 
Fields inherited from class org.restlet.representation.Representation
UNKNOWN_SIZE
 
Constructor Summary
JaxbRepresentation(MediaType mediaType, T object)
          Creates a JAXB representation from an existing JAXB content tree.
JaxbRepresentation(Representation xmlRepresentation, Class<T> type)
          Creates a new JAXB representation, converting the input XML into a Java content tree.
JaxbRepresentation(Representation xmlRepresentation, Class<T> type, ValidationEventHandler validationHandler)
          Creates a new JAXB representation, converting the input XML into a Java content tree.
JaxbRepresentation(Representation xmlRepresentation, String contextPath)
          Creates a new JAXB representation, converting the input XML into a Java content tree.
JaxbRepresentation(Representation xmlRepresentation, String contextPath, ValidationEventHandler validationHandler)
          Creates a new JAXB representation, converting the input XML into a Java content tree.
JaxbRepresentation(T object)
          Creates a JAXB representation from an existing JAXB content tree with MediaType.APPLICATION_XML.
 
Method Summary
 JAXBContext getContext()
          Returns the JAXB context.
static JAXBContext getContext(String contextPath, ClassLoader classLoader)
          Returns the JAXB context, if possible from the cached contexts.
 String getContextPath()
          Returns the list of Java package names that contain schema derived class and/or Java to schema (JAXB-annotated) mapped classes
 InputSource getInputSource()
          Deprecated.  
 JAXBSource getJaxbSource()
          Returns a JAXB SAX source.
 String getNoNamespaceSchemaLocation()
          Returns the "xsi:noNamespaceSchemaLocation" attribute in the generated XML data.
 T getObject()
          Returns the wrapped Java object.
 SAXSource getSaxSource()
          Deprecated. Use getJaxbSource() instead.
 String getSchemaLocation()
          Returns the "xsi:schemaLocation" attribute in the generated XML data.
 ValidationEventHandler getValidationEventHandler()
          Returns the optional validation event handler.
 boolean isFormattedOutput()
          Indicates if the resulting XML data should be formatted with line breaks and indentation.
 boolean isFragment()
          Indicates whether or not document level events will be generated by the Marshaller.
 void setContextPath(String contextPath)
          Sets the list of Java package names that contain schema derived class and/or Java to schema (JAXB-annotated) mapped classes.
 void setFormattedOutput(boolean formattedOutput)
          Indicates if the resulting XML data should be formatted with line breaks and indentation.
 void setFragment(boolean fragment)
          Indicates whether or not document level events will be generated by the Marshaller.
 void setNoNamespaceSchemaLocation(String noNamespaceSchemaLocation)
          Sets the "xsi:noNamespaceSchemaLocation" attribute in the generated XML data.
 void setObject(T object)
          Sets the wrapped Java object.
 void setSchemaLocation(String schemaLocation)
          Sets the "xsi:schemaLocation" attribute in the generated XML data.
 void setValidationEventHandler(ValidationEventHandler validationEventHandler)
          Sets the validation event handler.
 void write(Writer writer)
          Writes the representation to a stream of characters.
 
Methods inherited from class org.restlet.representation.WriterRepresentation
getReader, release, write
 
Methods inherited from class org.restlet.representation.CharacterRepresentation
getChannel, getStream, write
 
Methods inherited from class org.restlet.representation.Representation
checkDigest, checkDigest, computeDigest, createEmpty, exhaust, getAvailableSize, getDigest, getDisposition, getDownloadName, getExpirationDate, getRange, getSize, getText, isAvailable, isDownloadable, isTransient, setAvailable, setDigest, setDisposition, setDownloadable, setDownloadName, setExpirationDate, setRange, setSize, setTransient
 
Methods inherited from class org.restlet.representation.RepresentationInfo
getModificationDate, getTag, setModificationDate, setTag
 
Methods inherited from class org.restlet.representation.Variant
createClientInfo, equals, getCharacterSet, getEncodings, getIdentifier, getLanguages, getLocationRef, getMediaType, includes, isCompatible, setCharacterSet, setEncodings, setIdentifier, setIdentifier, setLanguages, setLocationRef, setLocationRef, setMediaType, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

JaxbRepresentation

public JaxbRepresentation(MediaType mediaType,
                          T object)
Creates a JAXB representation from an existing JAXB content tree.

Parameters:
mediaType - The representation's media type.
object - The Java object.

JaxbRepresentation

public JaxbRepresentation(Representation xmlRepresentation,
                          Class<T> type)
Creates a new JAXB representation, converting the input XML into a Java content tree. The XML is validated.

Parameters:
xmlRepresentation - The XML wrapped in a representation.
type - The type to convert to.
Throws:
JAXBException - If the incoming XML does not validate against the schema.
IOException - If unmarshalling XML fails.

JaxbRepresentation

public JaxbRepresentation(Representation xmlRepresentation,
                          Class<T> type,
                          ValidationEventHandler validationHandler)
Creates a new JAXB representation, converting the input XML into a Java content tree. The XML is validated.

Parameters:
xmlRepresentation - The XML wrapped in a representation.
type - The type to convert to.
validationHandler - A handler for dealing with validation failures.
Throws:
JAXBException - If the incoming XML does not validate against the schema.
IOException - If unmarshalling XML fails.

JaxbRepresentation

public JaxbRepresentation(Representation xmlRepresentation,
                          String contextPath)
Creates a new JAXB representation, converting the input XML into a Java content tree. The XML is validated.

Parameters:
xmlRepresentation - The XML wrapped in a representation.
contextPath - The list of Java package names for JAXB.
Throws:
JAXBException - If the incoming XML does not validate against the schema.
IOException - If unmarshalling XML fails.

JaxbRepresentation

public JaxbRepresentation(Representation xmlRepresentation,
                          String contextPath,
                          ValidationEventHandler validationHandler)
Creates a new JAXB representation, converting the input XML into a Java content tree. The XML is validated.

Parameters:
xmlRepresentation - The XML wrapped in a representation.
contextPath - The list of Java package names for JAXB.
validationHandler - A handler for dealing with validation failures.
Throws:
JAXBException - If the incoming XML does not validate against the schema.
IOException - If unmarshalling XML fails.

JaxbRepresentation

public JaxbRepresentation(T object)
Creates a JAXB representation from an existing JAXB content tree with MediaType.APPLICATION_XML.

Parameters:
object - The Java object.
Method Detail

getContext

public static JAXBContext getContext(String contextPath,
                                     ClassLoader classLoader)
                              throws JAXBException
Returns the JAXB context, if possible from the cached contexts.

Parameters:
contextPath -
classLoader -
Returns:
The JAXB context.
Throws:
JAXBException

getContext

public JAXBContext getContext()
                       throws JAXBException
Returns the JAXB context.

Returns:
The JAXB context.
Throws:
JAXBException

getContextPath

public String getContextPath()
Returns the list of Java package names that contain schema derived class and/or Java to schema (JAXB-annotated) mapped classes

Returns:
The list of Java package names.

getInputSource

@Deprecated
public InputSource getInputSource()
                           throws IOException
Deprecated. 

Returns the XML representation as a SAX input source.

Returns:
The SAX input source.
Throws:
IOException

getJaxbSource

public JAXBSource getJaxbSource()
                         throws IOException
Returns a JAXB SAX source.

Returns:
A JAXB SAX source.
Throws:
IOException

getNoNamespaceSchemaLocation

public String getNoNamespaceSchemaLocation()
Returns the "xsi:noNamespaceSchemaLocation" attribute in the generated XML data.

Returns:
The "xsi:noNamespaceSchemaLocation" attribute in the generated XML data.

getObject

public T getObject()
            throws IOException
Returns the wrapped Java object.

Returns:
The wrapped Java object.
Throws:
IOException

getSaxSource

@Deprecated
public SAXSource getSaxSource()
                       throws IOException
Deprecated. Use getJaxbSource() instead.

Returns a JAXB SAX source.

Returns:
A JAXB SAX source.
Throws:
IOException

getSchemaLocation

public String getSchemaLocation()
Returns the "xsi:schemaLocation" attribute in the generated XML data.

Returns:
The "xsi:schemaLocation" attribute in the generated XML data.

getValidationEventHandler

public ValidationEventHandler getValidationEventHandler()
Returns the optional validation event handler.

Returns:
The optional validation event handler.

isFormattedOutput

public boolean isFormattedOutput()
Indicates if the resulting XML data should be formatted with line breaks and indentation. Defaults to false.

Returns:
the formattedOutput

isFragment

public boolean isFragment()
Indicates whether or not document level events will be generated by the Marshaller.

Returns:
True if the document level events will be generated by the Marshaller.

setContextPath

public void setContextPath(String contextPath)
Sets the list of Java package names that contain schema derived class and/or Java to schema (JAXB-annotated) mapped classes.

Parameters:
contextPath - The JAXB context path.

setFormattedOutput

public void setFormattedOutput(boolean formattedOutput)
Indicates if the resulting XML data should be formatted with line breaks and indentation.

Parameters:
formattedOutput - True if the resulting XML data should be formatted.

setFragment

public void setFragment(boolean fragment)
Indicates whether or not document level events will be generated by the Marshaller.

Parameters:
fragment - True if the document level events will be generated by the Marshaller.

setNoNamespaceSchemaLocation

public void setNoNamespaceSchemaLocation(String noNamespaceSchemaLocation)
Sets the "xsi:noNamespaceSchemaLocation" attribute in the generated XML data.

Parameters:
noNamespaceSchemaLocation - The "xsi:noNamespaceSchemaLocation" attribute in the generated XML data.

setObject

public void setObject(T object)
Sets the wrapped Java object.

Parameters:
object - The Java object to set.

setSchemaLocation

public void setSchemaLocation(String schemaLocation)
Sets the "xsi:schemaLocation" attribute in the generated XML data.

Parameters:
schemaLocation - The "xsi:noNamespaceSchemaLocation" attribute in the generated XML data.

setValidationEventHandler

public void setValidationEventHandler(ValidationEventHandler validationEventHandler)
Sets the validation event handler.

Parameters:
validationEventHandler - The optional validation event handler.

write

public void write(Writer writer)
           throws IOException
Writes the representation to a stream of characters.

Specified by:
write in class Representation
Parameters:
writer - The writer to use when writing.
Throws:
IOException - If any error occurs attempting to write the stream.


Copyright © 2005-2011 Noelios Technologies.