Class AbstractMessageReaderWriterProvider<T>
- java.lang.Object
-
- org.glassfish.jersey.message.internal.AbstractMessageReaderWriterProvider<T>
-
- Type Parameters:
T- Java type supported by the provider
- All Implemented Interfaces:
MessageBodyReader<T>,MessageBodyWriter<T>
- Direct Known Subclasses:
AbstractFormProvider,ByteArrayProvider,DataSourceProvider,FileProvider,InputStreamProvider,ReaderProvider,RenderedImageProvider
public abstract class AbstractMessageReaderWriterProvider<T> extends Object implements MessageBodyReader<T>, MessageBodyWriter<T>
Abstract entity provider (reader and writer) base class.- Author:
- Paul Sandoz, Marek Potociar
-
-
Constructor Summary
Constructors Constructor Description AbstractMessageReaderWriterProvider()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static CharsetgetCharset(MediaType m)Get the character set from a media type.longgetSize(T t, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)Originally, the method has been called beforewriteToto ascertain the length in bytes of the serialized form oft.static StringreadFromAsString(InputStream in, MediaType type)Read the bytes of an input stream and convert to a string.static voidwriteTo(InputStream in, OutputStream out)Reader bytes from an input stream and write then to an output stream.static voidwriteTo(Reader in, Writer out)Reader characters from an input stream and write then to an output stream.static voidwriteToAsString(String s, OutputStream out, MediaType type)Convert a string to bytes and write those bytes to an output stream.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jakarta.ws.rs.ext.MessageBodyReader
isReadable, readFrom
-
Methods inherited from interface jakarta.ws.rs.ext.MessageBodyWriter
isWriteable, writeTo
-
-
-
-
Field Detail
-
UTF8
public static final Charset UTF8
The UTF-8 Charset.
-
-
Method Detail
-
writeTo
public static void writeTo(InputStream in, OutputStream out) throws IOException
Reader bytes from an input stream and write then to an output stream.- Parameters:
in- the input stream to read from.out- the output stream to write to.- Throws:
IOException- if there is an error reading or writing bytes.
-
writeTo
public static void writeTo(Reader in, Writer out) throws IOException
Reader characters from an input stream and write then to an output stream.- Parameters:
in- the reader to read from.out- the writer to write to.- Throws:
IOException- if there is an error reading or writing characters.
-
getCharset
public static Charset getCharset(MediaType m)
Get the character set from a media type.The character set is obtained from the media type parameter "charset". If the parameter is not present the
UTF8charset is utilized.- Parameters:
m- the media type.- Returns:
- the character set.
-
readFromAsString
public static String readFromAsString(InputStream in, MediaType type) throws IOException
Read the bytes of an input stream and convert to a string.- Parameters:
in- the input stream to read from.type- the media type that determines the character set defining how to decode bytes to characters.- Returns:
- the string.
- Throws:
IOException- if there is an error reading from the input stream.
-
writeToAsString
public static void writeToAsString(String s, OutputStream out, MediaType type) throws IOException
Convert a string to bytes and write those bytes to an output stream.- Parameters:
s- the string to convert to bytes.out- the output stream to write to.type- the media type that determines the character set defining how to decode bytes to characters.- Throws:
IOException- in case of a write failure.
-
getSize
public long getSize(T t, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)
Description copied from interface:MessageBodyWriterOriginally, the method has been called beforewriteToto ascertain the length in bytes of the serialized form oft. A non-negative return value has been used in a HTTPContent-Lengthheader.As of JAX-RS 2.0, the method has been deprecated and the value returned by the method is ignored by a JAX-RS runtime. All
MessageBodyWriterimplementations are advised to return-1from the method. Responsibility to compute the actualContent-Lengthheader value has been delegated to JAX-RS runtime.- Specified by:
getSizein interfaceMessageBodyWriter<T>- Parameters:
t- the instance to writetype- 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.- Returns:
- length in bytes or -1 if the length cannot be determined in advance.
-
-