Class SourceHttpMessageConverter<T extends Source>
- java.lang.Object
- org.springframework.http.converter.AbstractHttpMessageConverter<T>
- org.springframework.http.converter.xml.SourceHttpMessageConverter<T>
- All Implemented Interfaces:
HttpMessageConverter<T>
public class SourceHttpMessageConverter<T extends Source> extends AbstractHttpMessageConverter<T>
Implementation ofHttpMessageConverterthat can read and writeSourceobjects.- Since:
- 3.0
- Author:
- Arjen Poutsma, Rossen Stoyanchev
Field Summary
Fields inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
logger
Constructor Summary
Constructors Constructor Description SourceHttpMessageConverter()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected LonggetContentLength(T t, MediaType contentType)Returns the content length for the given type.booleanisProcessExternalEntities()Return whether XML external entities are allowed.booleanisSupportDtd()Return whether DTD parsing is supported.protected TreadInternal(Class<? extends T> clazz, HttpInputMessage inputMessage)Abstract template method that reads the actual object.voidsetProcessExternalEntities(boolean processExternalEntities)Indicate whether external XML entities are processed when converting to a Source.voidsetSupportDtd(boolean supportDtd)Indicate whether DTD parsing should be supported.booleansupports(Class<?> clazz)Indicates whether the given class is supported by this converter.protected voidwriteInternal(T t, HttpOutputMessage outputMessage)Abstract template method that writes the actual body.Methods inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
addDefaultHeaders, canRead, canRead, canWrite, canWrite, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, write
Constructor Detail
SourceHttpMessageConverter
public SourceHttpMessageConverter()
Method Detail
setSupportDtd
public void setSupportDtd(boolean supportDtd)
Indicate whether DTD parsing should be supported.Default is
falsemeaning that DTD is disabled.
isSupportDtd
public boolean isSupportDtd()
Return whether DTD parsing is supported.
setProcessExternalEntities
public void setProcessExternalEntities(boolean processExternalEntities)
Indicate whether external XML entities are processed when converting to a Source.Default is
false, meaning that external entities are not resolved.Note: setting this option to
truealso automatically setssetSupportDtd(boolean)totrue.
isProcessExternalEntities
public boolean isProcessExternalEntities()
Return whether XML external entities are allowed.
supports
public boolean supports(Class<?> clazz)
Description copied from class:AbstractHttpMessageConverterIndicates whether the given class is supported by this converter.- Specified by:
supportsin classAbstractHttpMessageConverter<T extends Source>- Parameters:
clazz- the class to test for support- Returns:
trueif supported;falseotherwise
readInternal
protected T readInternal(Class<? extends T> clazz, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException
Description copied from class:AbstractHttpMessageConverterAbstract template method that reads the actual object. Invoked fromAbstractHttpMessageConverter.read(java.lang.Class<? extends T>, org.springframework.http.HttpInputMessage).- Specified by:
readInternalin classAbstractHttpMessageConverter<T extends Source>- Parameters:
clazz- the type of object to returninputMessage- the HTTP input message to read from- Returns:
- the converted object
- Throws:
IOException- in case of I/O errorsHttpMessageNotReadableException- in case of conversion errors
getContentLength
protected Long getContentLength(T t, MediaType contentType)
Description copied from class:AbstractHttpMessageConverterReturns the content length for the given type.By default, this returns
null, meaning that the content length is unknown. Can be overridden in subclasses.- Overrides:
getContentLengthin classAbstractHttpMessageConverter<T extends Source>- Parameters:
t- the type to return the content length for- Returns:
- the content length, or
nullif not known
writeInternal
protected void writeInternal(T t, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException
Description copied from class:AbstractHttpMessageConverterAbstract template method that writes the actual body. Invoked fromAbstractHttpMessageConverter.write(T, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage).- Specified by:
writeInternalin classAbstractHttpMessageConverter<T extends Source>- Parameters:
t- the object to write to the output messageoutputMessage- the HTTP output message to write to- Throws:
IOException- in case of I/O errorsHttpMessageNotWritableException- in case of conversion errors