Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.sun.jersey.core.spi.factory
Class MessageBodyFactory

    java.lang.Object
      com.sun.jersey.core.spi.factory.MessageBodyFactory

All Implemented Interfaces:
  MessageBodyWorkers

    public class MessageBodyFactory

extends java.lang.Object
implements MessageBodyWorkers

A factory for managing `MessageBodyReader` and `MessageBodyWriter` instances.

Author:
  Paul.Sandoz@Sun.Com

Constructor Summary
`MessageBodyFactory(ProviderServices providerServices)`

Method Summary
`
`<T> javax.ws.rs.ext.MessageBodyReader<T>`
` | `getMessageBodyReader(java.lang.Class<T> c, java.lang.reflect.Type t, java.lang.annotation.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(java.lang.Class<T> c, java.lang.reflect.Type t, java.lang.annotation.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(java.lang.Class<T> c, java.lang.reflect.Type t, java.lang.annotation.Annotation[] as, java.util.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> java.util.List<javax.ws.rs.core.MediaType>`
` | `getMessageBodyWriterMediaTypes(java.lang.Class<T> c, java.lang.reflect.Type t, java.lang.annotation.Annotation[] as)` Get the list of media types supported for a Java type.
`void` | `init()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MessageBodyFactory

    public MessageBodyFactory(ProviderServices providerServices)

Method Detail

### init

    public void init()

### getMessageBodyReader

    public <T> javax.ws.rs.ext.MessageBodyReader<T> getMessageBodyReader(java.lang.Class<T> c,
                                                                         java.lang.reflect.Type t,
                                                                         java.lang.annotation.Annotation[] as,
                                                                         javax.ws.rs.core.MediaType mediaType)

  Description copied from interface: `MessageBodyWorkers`
  Get a message body reader that matches a set of criteria.

  Specified by:
    `getMessageBodyReader` in interface `MessageBodyWorkers`
  Type Parameters:
    `T` - the type of object to be read.
  Parameters:
    `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.
  Returns:
    a MessageBodyReader that matches the supplied criteria or null if none is found.

### getMessageBodyWriter

    public <T> javax.ws.rs.ext.MessageBodyWriter<T> getMessageBodyWriter(java.lang.Class<T> c,
                                                                         java.lang.reflect.Type t,
                                                                         java.lang.annotation.Annotation[] as,
                                                                         javax.ws.rs.core.MediaType mediaType)

  Description copied from interface: `MessageBodyWorkers`
  Get a message body writer that matches a set of criteria.

  Specified by:
    `getMessageBodyWriter` in interface `MessageBodyWorkers`
  Type Parameters:
    `T` - the type of the object that is to be written.
  Parameters:
    `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.
  Returns:
    a MessageBodyReader that matches the supplied criteria or null if none is found.

### getMessageBodyWriterMediaTypes

    public <T> java.util.List<javax.ws.rs.core.MediaType> getMessageBodyWriterMediaTypes(java.lang.Class<T> c,
                                                                                         java.lang.reflect.Type t,
                                                                                         java.lang.annotation.Annotation[] as)

  Description copied from interface: `MessageBodyWorkers`
  Get the list of media types supported for a Java type.

  Specified by:
    `getMessageBodyWriterMediaTypes` in interface `MessageBodyWorkers`
  Type Parameters:
    `T` - the type of object that is to be written.
  Parameters:
    `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`.
  Returns:
    the list of supported media types, the list is ordered as follows: a/b < a/* < \*\/*

### getMessageBodyWriterMediaType

    public <T> javax.ws.rs.core.MediaType getMessageBodyWriterMediaType(java.lang.Class<T> c,
                                                                        java.lang.reflect.Type t,
                                                                        java.lang.annotation.Annotation[] as,
                                                                        java.util.List<javax.ws.rs.core.MediaType> acceptableMediaTypes)

  Description copied from interface: `MessageBodyWorkers`
  Get the most acceptable media type supported for a Java type given a set of acceptable media types.

  Specified by:
    `getMessageBodyWriterMediaType` in interface `MessageBodyWorkers`
  Type Parameters:
    `T` - the type of object that is to be written.
  Parameters:
    `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.
  Returns:
    the best media types

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2008 Sun Microsystems, Inc. All Rights Reserved.