public class ResourceRegionHttpMessageConverter extends AbstractGenericHttpMessageConverter<java.lang.Object>
HttpMessageConverter
that can write a single ResourceRegion
,
or Collections of ResourceRegions
.logger
Constructor and Description |
---|
ResourceRegionHttpMessageConverter() |
Modifier and Type | Method and Description |
---|---|
boolean |
canRead(java.lang.Class<?> clazz,
MediaType mediaType)
This implementation checks if the given class is supported,
and if the supported media types
include the given media type.
|
boolean |
canRead(java.lang.reflect.Type type,
java.lang.Class<?> contextClass,
MediaType mediaType)
Indicates whether the given type can be read by this converter.
|
boolean |
canWrite(java.lang.Class<?> clazz,
MediaType mediaType)
|
boolean |
canWrite(java.lang.reflect.Type type,
java.lang.Class<?> clazz,
MediaType mediaType)
Indicates whether the given class can be written by this converter.
|
protected MediaType |
getDefaultContentType(java.lang.Object object)
Returns the default content type for the given type.
|
java.lang.Object |
read(java.lang.reflect.Type type,
java.lang.Class<?> contextClass,
HttpInputMessage inputMessage)
Read an object of the given type form the given input message, and returns it.
|
protected ResourceRegion |
readInternal(java.lang.Class<?> clazz,
HttpInputMessage inputMessage)
Abstract template method that reads the actual object.
|
protected void |
writeInternal(java.lang.Object object,
java.lang.reflect.Type type,
HttpOutputMessage outputMessage)
Abstract template method that writes the actual body.
|
protected void |
writeResourceRegion(ResourceRegion region,
HttpOutputMessage outputMessage) |
supports, write, writeInternal
addDefaultHeaders, canRead, canWrite, getContentLength, getDefaultCharset, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, write
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getSupportedMediaTypes, read, write
protected MediaType getDefaultContentType(java.lang.Object object)
AbstractHttpMessageConverter
AbstractHttpMessageConverter.write(T, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage)
is invoked without a specified content type parameter.
By default, this returns the first element of the
supportedMediaTypes
property, if any.
Can be overridden in subclasses.
getDefaultContentType
in class AbstractHttpMessageConverter<java.lang.Object>
object
- the type to return the content type fornull
if not knownpublic boolean canRead(java.lang.Class<?> clazz, @Nullable MediaType mediaType)
AbstractHttpMessageConverter
canRead
in interface HttpMessageConverter<java.lang.Object>
canRead
in class AbstractHttpMessageConverter<java.lang.Object>
clazz
- the class to test for readabilitymediaType
- the media type to read (can be null
if not specified);
typically the value of a Content-Type
header.true
if readable; false
otherwisepublic boolean canRead(java.lang.reflect.Type type, @Nullable java.lang.Class<?> contextClass, @Nullable MediaType mediaType)
GenericHttpMessageConverter
HttpMessageConverter.canRead(Class, MediaType)
with additional ones
related to the generic type.canRead
in interface GenericHttpMessageConverter<java.lang.Object>
canRead
in class AbstractGenericHttpMessageConverter<java.lang.Object>
type
- the (potentially generic) type to test for readabilitycontextClass
- a context class for the target type, for example a class
in which the target type appears in a method signature (can be null
)mediaType
- the media type to read, can be null
if not specified.
Typically the value of a Content-Type
header.true
if readable; false
otherwisepublic java.lang.Object read(java.lang.reflect.Type type, @Nullable java.lang.Class<?> contextClass, HttpInputMessage inputMessage) throws java.io.IOException, HttpMessageNotReadableException
GenericHttpMessageConverter
type
- the (potentially generic) type of object to return. This type must have
previously been passed to the canRead
method of this interface,
which must have returned true
.contextClass
- a context class for the target type, for example a class
in which the target type appears in a method signature (can be null
)inputMessage
- the HTTP input message to read fromjava.io.IOException
- in case of I/O errorsHttpMessageNotReadableException
- in case of conversion errorsprotected ResourceRegion readInternal(java.lang.Class<?> clazz, HttpInputMessage inputMessage) throws java.io.IOException, HttpMessageNotReadableException
AbstractHttpMessageConverter
AbstractHttpMessageConverter.read(java.lang.Class<? extends T>, org.springframework.http.HttpInputMessage)
.readInternal
in class AbstractHttpMessageConverter<java.lang.Object>
clazz
- the type of object to returninputMessage
- the HTTP input message to read fromjava.io.IOException
- in case of I/O errorsHttpMessageNotReadableException
- in case of conversion errorspublic boolean canWrite(java.lang.Class<?> clazz, @Nullable MediaType mediaType)
AbstractHttpMessageConverter
canWrite
in interface HttpMessageConverter<java.lang.Object>
canWrite
in class AbstractHttpMessageConverter<java.lang.Object>
clazz
- the class to test for writabilitymediaType
- the media type to write (can be null
if not specified);
typically the value of an Accept
header.true
if writable; false
otherwisepublic boolean canWrite(@Nullable java.lang.reflect.Type type, @Nullable java.lang.Class<?> clazz, @Nullable MediaType mediaType)
GenericHttpMessageConverter
This method should perform the same checks than
HttpMessageConverter.canWrite(Class, MediaType)
with additional ones
related to the generic type.
canWrite
in interface GenericHttpMessageConverter<java.lang.Object>
canWrite
in class AbstractGenericHttpMessageConverter<java.lang.Object>
type
- the (potentially generic) type to test for writability
(can be null
if not specified)clazz
- the source object class to test for writabilitymediaType
- the media type to write (can be null
if not specified);
typically the value of an Accept
header.true
if writable; false
otherwiseprotected void writeInternal(java.lang.Object object, @Nullable java.lang.reflect.Type type, HttpOutputMessage outputMessage) throws java.io.IOException, HttpMessageNotWritableException
AbstractGenericHttpMessageConverter
AbstractGenericHttpMessageConverter.write(T, java.lang.reflect.Type, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage)
.writeInternal
in class AbstractGenericHttpMessageConverter<java.lang.Object>
object
- the object to write to the output messagetype
- the type of object to write (may be null
)outputMessage
- the HTTP output message to write tojava.io.IOException
- in case of I/O errorsHttpMessageNotWritableException
- in case of conversion errorsprotected void writeResourceRegion(ResourceRegion region, HttpOutputMessage outputMessage) throws java.io.IOException
java.io.IOException