org.springframework.http.converter
Class StringHttpMessageConverter

java.lang.Object
  extended by org.springframework.http.converter.AbstractHttpMessageConverter<java.lang.String>
      extended by org.springframework.http.converter.StringHttpMessageConverter
All Implemented Interfaces:
HttpMessageConverter<java.lang.String>

public class StringHttpMessageConverter
extends AbstractHttpMessageConverter<java.lang.String>

Implementation of HttpMessageConverter that can read and write strings.

By default, this converter supports all media types (*/*), and writes with a Content-Type of text/plain. This can be overridden by setting the supportedMediaTypes property.

Since:
1.0

Field Summary
static java.nio.charset.Charset DEFAULT_CHARSET
           
 
Constructor Summary
StringHttpMessageConverter()
           
 
Method Summary
protected  java.util.List<java.nio.charset.Charset> getAcceptedCharsets()
          Return the list of supported Charset.
protected  java.lang.Long getContentLength(java.lang.String s, MediaType contentType)
          Returns the content length for the given type.
protected  java.lang.String readInternal(java.lang.Class<? extends java.lang.String> clazz, HttpInputMessage inputMessage)
          Abstract template method that reads the actualy object.
 void setWriteAcceptCharset(boolean writeAcceptCharset)
          Indicates whether the Accept-Charset should be written to any outgoing request.
 boolean supports(java.lang.Class<?> clazz)
          Indicates whether the given class is supported by this converter.
protected  void writeInternal(java.lang.String s, HttpOutputMessage outputMessage)
          Abstract template method that writes the actual body.
 
Methods inherited from class org.springframework.http.converter.AbstractHttpMessageConverter
canRead, canRead, canWrite, canWrite, getDefaultContentType, getSupportedMediaTypes, read, setSupportedMediaTypes, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_CHARSET

public static final java.nio.charset.Charset DEFAULT_CHARSET
Constructor Detail

StringHttpMessageConverter

public StringHttpMessageConverter()
Method Detail

setWriteAcceptCharset

public void setWriteAcceptCharset(boolean writeAcceptCharset)
Indicates whether the Accept-Charset should be written to any outgoing request.

Default is true.


supports

public boolean supports(java.lang.Class<?> clazz)
Description copied from class: AbstractHttpMessageConverter
Indicates whether the given class is supported by this converter.

Specified by:
supports in class AbstractHttpMessageConverter<java.lang.String>
Parameters:
clazz - the class to test for support
Returns:
true if supported; false otherwise

readInternal

protected java.lang.String readInternal(java.lang.Class<? extends java.lang.String> clazz,
                                        HttpInputMessage inputMessage)
                                 throws java.io.IOException
Description copied from class: AbstractHttpMessageConverter
Abstract template method that reads the actualy object. Invoked from AbstractHttpMessageConverter.read(java.lang.Class, org.springframework.http.HttpInputMessage).

Specified by:
readInternal in class AbstractHttpMessageConverter<java.lang.String>
Parameters:
clazz - the type of object to return
inputMessage - the HTTP input message to read from
Returns:
the converted object
Throws:
java.io.IOException - in case of I/O errors

getContentLength

protected java.lang.Long getContentLength(java.lang.String s,
                                          MediaType contentType)
Description copied from class: AbstractHttpMessageConverter
Returns 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:
getContentLength in class AbstractHttpMessageConverter<java.lang.String>
Parameters:
s - the type to return the content length for
Returns:
the content length, or null if not known

writeInternal

protected void writeInternal(java.lang.String s,
                             HttpOutputMessage outputMessage)
                      throws java.io.IOException
Description copied from class: AbstractHttpMessageConverter
Abstract template method that writes the actual body. Invoked from AbstractHttpMessageConverter.write(T, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage).

Specified by:
writeInternal in class AbstractHttpMessageConverter<java.lang.String>
Parameters:
s - the object to write to the output message
outputMessage - the message to write to
Throws:
java.io.IOException - in case of I/O errors

getAcceptedCharsets

protected java.util.List<java.nio.charset.Charset> getAcceptedCharsets()
Return the list of supported Charset.

By default, returns Charset.availableCharsets(). Can be overridden in subclasses.

Returns:
the list of accepted charsets