Class JAXBElementProvider
- java.lang.Object
-
- org.jboss.resteasy.plugins.providers.AbstractEntityProvider<T>
-
- org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider<JAXBElement<?>>
-
- org.jboss.resteasy.plugins.providers.jaxb.JAXBElementProvider
-
- All Implemented Interfaces:
javax.ws.rs.ext.MessageBodyReader<JAXBElement<?>>,javax.ws.rs.ext.MessageBodyWriter<JAXBElement<?>>,AsyncBufferedMessageBodyWriter<JAXBElement<?>>,AsyncMessageBodyWriter<JAXBElement<?>>
- Direct Known Subclasses:
FastinfoSetElementProvider
@Provider @Produces({"application/xml","application/*+xml","text/xml","text/*+xml"}) @Consumes({"application/xml","application/*+xml","text/xml","text/*+xml"}) public class JAXBElementProvider extends AbstractJAXBProvider<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
-
-
Field Summary
-
Fields inherited from class org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider
providers
-
-
Constructor Summary
Constructors Constructor Description JAXBElementProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompletionStage<Void>asyncWriteTo(JAXBElement<?> t, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, AsyncOutputStream outputStream)Write a type to an HTTP message using async IO.protected booleanisReadWritable(Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)JAXBElement<?>readFrom(Class<JAXBElement<?>> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,String> httpHeaders, InputStream entityStream)voidwriteTo(JAXBElement<?> t, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, OutputStream outputStream)-
Methods inherited from class org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBProvider
decorateMarshaller, decorateUnmarshaller, findJAXBContext, getCharset, getMarshaller, isDisableDTDs, isDisableExternalEntities, isEnableSecureProcessingFeature, isReadable, isWriteable, needsSecurity, processWithSecureProcessing, setCharset, setDisableDTDs, setDisableExternalEntities, setEnableSecureProcessingFeature
-
Methods inherited from class org.jboss.resteasy.plugins.providers.AbstractEntityProvider
getSize
-
-
-
-
Method Detail
-
isReadWritable
protected boolean isReadWritable(Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
- Specified by:
isReadWritablein classAbstractJAXBProvider<JAXBElement<?>>
-
readFrom
public JAXBElement<?> readFrom(Class<JAXBElement<?>> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,String> httpHeaders, InputStream entityStream) throws IOException
- Specified by:
readFromin interfacejavax.ws.rs.ext.MessageBodyReader<JAXBElement<?>>- Overrides:
readFromin classAbstractJAXBProvider<JAXBElement<?>>- Throws:
IOException
-
writeTo
public void writeTo(JAXBElement<?> t, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, OutputStream outputStream) throws IOException
- Specified by:
writeToin interfacejavax.ws.rs.ext.MessageBodyWriter<JAXBElement<?>>- Overrides:
writeToin classAbstractJAXBProvider<JAXBElement<?>>- Throws:
IOException
-
asyncWriteTo
public CompletionStage<Void> asyncWriteTo(JAXBElement<?> t, Class<?> type, Type genericType, Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, javax.ws.rs.core.MultivaluedMap<String,Object> httpHeaders, AsyncOutputStream outputStream)
Description copied from interface:AsyncMessageBodyWriterWrite a type to an HTTP message using async IO. The message header map is mutable but any changes must be made before writing to the async output stream since the headers will be flushed prior to writing the message body.- Parameters:
t- the instance to write.type- the class of instance that is to be written.genericType- the type of instance to be written.GenericEntityprovides a way to specify this information at runtime.annotations- an array of the annotations attached to the message entity instance.mediaType- the media type of the HTTP entity.httpHeaders- a mutable map of the HTTP message headers.outputStream- theAsyncOutputStreamfor the HTTP entity. The implementation should not close the output stream.- Returns:
- a
CompletionStageindicating completion
-
-