public interface MessageBodyReader<T>
MessageBodyReader
implementation, annotate the
implementation class with @Provider
.
A MessageBodyReader
implementation may be annotated
with Consumes
to restrict the media types for which it will
be considered suitable.Modifier and Type | Method and Description |
---|---|
boolean |
isReadable(java.lang.Class<?> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
MediaType mediaType)
Ascertain if the MessageBodyReader can produce an instance of a
particular type.
|
T |
readFrom(java.lang.Class<T> 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 . |
boolean isReadable(java.lang.Class<?> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, MediaType mediaType)
type
- the class of object to be produced.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, if one is not
specified in the request then application/octet-stream
is
used.T readFrom(java.lang.Class<T> 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, WebApplicationException
InputStream
.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.java.io.IOException
- if an IO error arisesWebApplicationException
- if a specific
HTTP error response needs to be produced. Only effective if thrown prior
to the response being committed.Copyright © 2016 Oracle Corporation. All Rights Reserved.