org.jboss.resteasy.plugins.providers.jaxb
Class JAXBElementProvider
java.lang.Object
org.jboss.resteasy.plugins.providers.AbstractEntityProvider<T>
org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider<javax.xml.bind.JAXBElement<?>>
org.jboss.resteasy.plugins.providers.jaxb.JAXBElementProvider
- All Implemented Interfaces:
- MessageBodyReader<javax.xml.bind.JAXBElement<?>>, MessageBodyWriter<javax.xml.bind.JAXBElement<?>>
@Provider
public class JAXBElementProvider
- extends AbstractJAXBProvider<javax.xml.bind.JAXBElement<?>>
A JAXB Provider which handles parameter and return types of JAXBElement
. This provider will be
selected when the resource is declared as:
@POST
@Consumes("applictaion/xml")
@Produces("applictaion/xml")
public JAXBElement<Contact> getContact(JAXBElement<Contact> value);
- Version:
- $Revision:$
- Author:
- Ryan J. McDonough
Method Summary |
protected boolean |
isReadWritable(java.lang.Class<?> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType)
FIXME Comment this |
javax.xml.bind.JAXBElement<?> |
readFrom(java.lang.Class<javax.xml.bind.JAXBElement<?>> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType,
MultivaluedMap<java.lang.String,java.lang.String> httpHeaders,
java.io.InputStream entityStream)
Read a type from the InputStream . |
void |
writeTo(javax.xml.bind.JAXBElement<?> t,
java.lang.Class<?> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType,
MultivaluedMap<java.lang.String,java.lang.Object> httpHeaders,
java.io.OutputStream outputStream)
Write a type to an HTTP response. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JAXBElementProvider
public JAXBElementProvider()
isReadWritable
protected boolean isReadWritable(java.lang.Class<?> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType)
- Description copied from class:
AbstractJAXBProvider
- FIXME Comment this
- Specified by:
isReadWritable
in class AbstractJAXBProvider<javax.xml.bind.JAXBElement<?>>
- Returns:
readFrom
public javax.xml.bind.JAXBElement<?> readFrom(java.lang.Class<javax.xml.bind.JAXBElement<?>> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType,
MultivaluedMap<java.lang.String,java.lang.String> httpHeaders,
java.io.InputStream entityStream)
throws java.io.IOException
- Description copied from interface:
MessageBodyReader
- Read a type from the
InputStream
.
- Specified by:
readFrom
in interface MessageBodyReader<javax.xml.bind.JAXBElement<?>>
- Overrides:
readFrom
in class AbstractJAXBProvider<javax.xml.bind.JAXBElement<?>>
- Parameters:
type
- the type that is to be read from the entity stream.genericType
- the type of object to be produced. E.g. if the
message body is to be converted into a method parameter, this will be
the formal type of the method parameter as returned by
Method.getGenericParameterTypes
.annotations
- an array of the annotations on the declaration of the
artifact that will be initialized with the produced instance. E.g. if the
message body is to be converted into a method parameter, this will be
the annotations on that parameter returned by
Method.getParameterAnnotations
.mediaType
- the media type of the HTTP entity.httpHeaders
- the read-only HTTP headers associated with HTTP entity.entityStream
- the InputStream
of the HTTP entity. The
caller is responsible for ensuring that the input stream ends when the
entity has been consumed. The implementation should not close the input stream.
- Returns:
- the type that was read from the stream.
- Throws:
java.io.IOException
- if an IO error arises
writeTo
public void writeTo(javax.xml.bind.JAXBElement<?> t,
java.lang.Class<?> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType,
MultivaluedMap<java.lang.String,java.lang.Object> httpHeaders,
java.io.OutputStream outputStream)
throws java.io.IOException
- Description copied from interface:
MessageBodyWriter
- Write a type to an HTTP response. The response header map is mutable
but any changes must be made before writing to the output stream since
the headers will be flushed prior to writing the response body.
- Specified by:
writeTo
in interface MessageBodyWriter<javax.xml.bind.JAXBElement<?>>
- Overrides:
writeTo
in class AbstractJAXBProvider<javax.xml.bind.JAXBElement<?>>
- Parameters:
t
- the instance to write.type
- the class of object that is to be written.genericType
- the type of object to be written, obtained either
by reflection of a resource method return type or by inspection
of the returned instance. GenericEntity
provides a way to specify this information at runtime.annotations
- an array of the annotations on the resource
method that returns the object.mediaType
- the media type of the HTTP entity.httpHeaders
- a mutable map of the HTTP response headers.outputStream
- the OutputStream
for the HTTP entity. The
implementation should not close the output stream.
- Throws:
java.io.IOException
- if an IO error arises
Copyright © 2010. All Rights Reserved.