public class ResourceHttpMessageConverter extends AbstractHttpMessageConverter<Resource>
HttpMessageConverter that can read/write Resources
and supports byte range requests.
By default, this converter can read all media types. The MediaTypeFactory is used
to determine the Content-Type of written resources.
logger| Constructor and Description |
|---|
ResourceHttpMessageConverter()
Create a new instance of the
ResourceHttpMessageConverter
that supports read streaming, i.e. |
ResourceHttpMessageConverter(boolean supportsReadStreaming)
Create a new instance of the
ResourceHttpMessageConverter. |
| Modifier and Type | Method and Description |
|---|---|
protected Long |
getContentLength(Resource resource,
MediaType contentType)
Returns the content length for the given type.
|
protected MediaType |
getDefaultContentType(Resource resource)
Returns the default content type for the given type.
|
protected Resource |
readInternal(Class<? extends Resource> clazz,
HttpInputMessage inputMessage)
Abstract template method that reads the actual object.
|
protected boolean |
supports(Class<?> clazz)
Indicates whether the given class is supported by this converter.
|
protected void |
writeContent(Resource resource,
HttpOutputMessage outputMessage) |
protected void |
writeInternal(Resource resource,
HttpOutputMessage outputMessage)
Abstract template method that writes the actual body.
|
addDefaultHeaders, canRead, canRead, canWrite, canWrite, getDefaultCharset, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, writeclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetSupportedMediaTypespublic ResourceHttpMessageConverter()
ResourceHttpMessageConverter
that supports read streaming, i.e. can convert an
HttpInputMessage to InputStreamResource.public ResourceHttpMessageConverter(boolean supportsReadStreaming)
ResourceHttpMessageConverter.supportsReadStreaming - whether the converter should support
read streaming, i.e. convert to InputStreamResourceprotected boolean supports(Class<?> clazz)
AbstractHttpMessageConvertersupports in class AbstractHttpMessageConverter<Resource>clazz - the class to test for supporttrue if supported; false otherwiseprotected Resource readInternal(Class<? extends Resource> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException
AbstractHttpMessageConverterAbstractHttpMessageConverter.read(java.lang.Class<? extends T>, org.springframework.http.HttpInputMessage).readInternal in class AbstractHttpMessageConverter<Resource>clazz - the type of object to returninputMessage - the HTTP input message to read fromIOException - in case of I/O errorsHttpMessageNotReadableException - in case of conversion errorsprotected MediaType getDefaultContentType(Resource resource)
AbstractHttpMessageConverterAbstractHttpMessageConverter.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<Resource>resource - the type to return the content type fornull if not knownprotected Long getContentLength(Resource resource, @Nullable MediaType contentType) throws IOException
AbstractHttpMessageConverterBy default, this returns null, meaning that the content length is unknown.
Can be overridden in subclasses.
getContentLength in class AbstractHttpMessageConverter<Resource>resource - the type to return the content length fornull if not knownIOExceptionprotected void writeInternal(Resource resource, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException
AbstractHttpMessageConverterAbstractHttpMessageConverter.write(T, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage).writeInternal in class AbstractHttpMessageConverter<Resource>resource - the object to write to the output messageoutputMessage - the HTTP output message to write toIOException - in case of I/O errorsHttpMessageNotWritableException - in case of conversion errorsprotected void writeContent(Resource resource, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException