public class MessageBodyFactory extends Object implements MessageBodyWorkers
MessageBodyReader
and MessageBodyWriter
instances.Constructor and Description |
---|
MessageBodyFactory(ProviderServices providerServices,
boolean deprecatedProviderPrecedence) |
Modifier and Type | Method and Description |
---|---|
<T> javax.ws.rs.ext.MessageBodyReader<T> |
getMessageBodyReader(Class<T> c,
Type t,
Annotation[] as,
javax.ws.rs.core.MediaType mediaType)
Get a message body reader that matches a set of criteria.
|
<T> javax.ws.rs.ext.MessageBodyWriter<T> |
getMessageBodyWriter(Class<T> c,
Type t,
Annotation[] as,
javax.ws.rs.core.MediaType mediaType)
Get a message body writer that matches a set of criteria.
|
<T> javax.ws.rs.core.MediaType |
getMessageBodyWriterMediaType(Class<T> c,
Type t,
Annotation[] as,
List<javax.ws.rs.core.MediaType> acceptableMediaTypes)
Get the most acceptable media type supported for a Java type given a set
of acceptable media types.
|
<T> List<javax.ws.rs.core.MediaType> |
getMessageBodyWriterMediaTypes(Class<T> c,
Type t,
Annotation[] as)
Get the list of media types supported for a Java type.
|
Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyReader>> |
getReaders(javax.ws.rs.core.MediaType mediaType)
Get the map of media type to list of message body writers that are
compatible with a media type.
|
Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyWriter>> |
getWriters(javax.ws.rs.core.MediaType mediaType)
Get the map of media type to list of message body writers that are
compatible with a media type.
|
void |
init() |
String |
readersToString(Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyReader>> readers)
Convert a map media type to list of message body readers to a string.
|
String |
writersToString(Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyWriter>> writers)
Convert a map media type to list of message body writers to a string.
|
public MessageBodyFactory(ProviderServices providerServices, boolean deprecatedProviderPrecedence)
public void init()
public Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyReader>> getReaders(javax.ws.rs.core.MediaType mediaType)
MessageBodyWorkers
getReaders
in interface MessageBodyWorkers
mediaType
- the compatible media type.public Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyWriter>> getWriters(javax.ws.rs.core.MediaType mediaType)
MessageBodyWorkers
getWriters
in interface MessageBodyWorkers
mediaType
- the compatible media type.public String readersToString(Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyReader>> readers)
MessageBodyWorkers
readersToString
in interface MessageBodyWorkers
readers
- the map media type to list of message body readerspublic String writersToString(Map<javax.ws.rs.core.MediaType,List<javax.ws.rs.ext.MessageBodyWriter>> writers)
MessageBodyWorkers
writersToString
in interface MessageBodyWorkers
writers
- the map media type to list of message body readerspublic <T> javax.ws.rs.ext.MessageBodyReader<T> getMessageBodyReader(Class<T> c, Type t, Annotation[] as, javax.ws.rs.core.MediaType mediaType)
MessageBodyWorkers
getMessageBodyReader
in interface MessageBodyWorkers
T
- the type of object to be read.c
- the class of object to be read.t
- 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
Class.getGenericParameterTypes
.as
- 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
Class.getParameterAnnotations
.mediaType
- the media type of the data that will be read, this will
be compared to the values of Consumes
for
each candidate reader and only matching readers will be queried.public <T> javax.ws.rs.ext.MessageBodyWriter<T> getMessageBodyWriter(Class<T> c, Type t, Annotation[] as, javax.ws.rs.core.MediaType mediaType)
MessageBodyWorkers
getMessageBodyWriter
in interface MessageBodyWorkers
T
- the type of the object that is to be written.c
- the class of object that is to be written.t
- the type of object to be written. E.g. if the
message body is to be produced from a field, this will be
the declared type of the field as returned by
Field.getGenericType
.as
- an array of the annotations on the declaration of the
artifact that will be written. E.g. if the
message body is to be produced from a field, this will be
the annotations on that field returned by
Field.getDeclaredAnnotations
.mediaType
- the media type of the data that will be written, this will
be compared to the values of Produces
for
each candidate writer and only matching writers will be queried.public <T> List<javax.ws.rs.core.MediaType> getMessageBodyWriterMediaTypes(Class<T> c, Type t, Annotation[] as)
MessageBodyWorkers
getMessageBodyWriterMediaTypes
in interface MessageBodyWorkers
T
- the type of object that is to be written.c
- the class of object that is to be written.t
- the type of object to be written. E.g. if the
message body is to be produced from a field, this will be
the declared type of the field as returned by
Field.getGenericType
.as
- an array of the annotations on the declaration of the
artifact that will be written. E.g. if the
message body is to be produced from a field, this will be
the annotations on that field returned by
Field.getDeclaredAnnotations
.public <T> javax.ws.rs.core.MediaType getMessageBodyWriterMediaType(Class<T> c, Type t, Annotation[] as, List<javax.ws.rs.core.MediaType> acceptableMediaTypes)
MessageBodyWorkers
getMessageBodyWriterMediaType
in interface MessageBodyWorkers
T
- the type of object that is to be written.c
- the class of object that is to be written.t
- the type of object to be written. E.g. if the
message body is to be produced from a field, this will be
the declared type of the field as returned by
Field.getGenericType
.as
- an array of the annotations on the declaration of the
artifact that will be written. E.g. if the
message body is to be produced from a field, this will be
the annotations on that field returned by
Field.getDeclaredAnnotations
.acceptableMediaTypes
- the list of acceptable media types, sorted
according to the quality with the media type of highest quality
occurring first first.Copyright © 2013 Oracle Corporation. All rights reserved.