public class FastJsonHttpMessageConverter
extends org.springframework.http.converter.AbstractHttpMessageConverter<java.lang.Object>
implements org.springframework.http.converter.GenericHttpMessageConverter<java.lang.Object>
AbstractHttpMessageConverter,
GenericHttpMessageConverter| Modifier and Type | Class and Description |
|---|---|
private static class |
FastJsonHttpMessageConverter.Spring4TypeResolvableHelper |
| Modifier and Type | Field and Description |
|---|---|
static org.springframework.http.MediaType |
APPLICATION_JAVASCRIPT |
private FastJsonConfig |
config
with fastJson config
|
private static int |
REQUEST_BODY_INITIAL_CAPACITY
Default initialization capacity when content-length is not specified
|
private static int |
SOFT_MAX_ARRAY_LENGTH |
| Constructor and Description |
|---|
FastJsonHttpMessageConverter()
Can serialize/deserialize all types.
|
| Modifier and Type | Method and Description |
|---|---|
protected static int |
calcInitialCapacity(long contentLength) |
boolean |
canRead(java.lang.reflect.Type type,
java.lang.Class<?> contextClass,
org.springframework.http.MediaType mediaType) |
boolean |
canWrite(java.lang.reflect.Type type,
java.lang.Class<?> clazz,
org.springframework.http.MediaType mediaType) |
protected static byte[] |
fastRead(java.io.InputStream in,
long contentLength) |
FastJsonConfig |
getFastJsonConfig() |
protected java.lang.reflect.Type |
getType(java.lang.reflect.Type type,
java.lang.Class<?> contextClass) |
private static int |
hugeLength(int oldLength,
int minGrowth) |
private static int |
newLength(int oldLength,
int minGrowth,
int prefGrowth) |
java.lang.Object |
read(java.lang.reflect.Type type,
java.lang.Class<?> contextClass,
org.springframework.http.HttpInputMessage inputMessage) |
protected java.lang.Object |
readInternal(java.lang.Class<?> clazz,
org.springframework.http.HttpInputMessage inputMessage) |
protected java.lang.Object |
readType(java.lang.reflect.Type type,
org.springframework.http.HttpInputMessage inputMessage) |
void |
setFastJsonConfig(FastJsonConfig fastJsonConfig) |
static void |
setRequestBodyInitialCapacity(int initialCapacity) |
protected boolean |
supports(java.lang.Class<?> clazz) |
void |
write(java.lang.Object o,
java.lang.reflect.Type type,
org.springframework.http.MediaType contentType,
org.springframework.http.HttpOutputMessage outputMessage) |
protected void |
writeInternal(java.lang.Object object,
org.springframework.http.HttpOutputMessage outputMessage) |
addDefaultHeaders, canRead, canRead, canWrite, canWrite, getContentLength, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, writepublic static final org.springframework.http.MediaType APPLICATION_JAVASCRIPT
private FastJsonConfig config
private static int REQUEST_BODY_INITIAL_CAPACITY
private static final int SOFT_MAX_ARRAY_LENGTH
public FastJsonHttpMessageConverter()
public FastJsonConfig getFastJsonConfig()
public void setFastJsonConfig(FastJsonConfig fastJsonConfig)
fastJsonConfig - the fastJsonConfig to set.protected boolean supports(java.lang.Class<?> clazz)
supports in class org.springframework.http.converter.AbstractHttpMessageConverter<java.lang.Object>public boolean canRead(java.lang.reflect.Type type,
java.lang.Class<?> contextClass,
org.springframework.http.MediaType mediaType)
canRead in interface org.springframework.http.converter.GenericHttpMessageConverter<java.lang.Object>public boolean canWrite(java.lang.reflect.Type type,
java.lang.Class<?> clazz,
org.springframework.http.MediaType mediaType)
canWrite in interface org.springframework.http.converter.GenericHttpMessageConverter<java.lang.Object>public java.lang.Object read(java.lang.reflect.Type type,
java.lang.Class<?> contextClass,
org.springframework.http.HttpInputMessage inputMessage)
throws java.io.IOException,
org.springframework.http.converter.HttpMessageNotReadableException
read in interface org.springframework.http.converter.GenericHttpMessageConverter<java.lang.Object>java.io.IOExceptionorg.springframework.http.converter.HttpMessageNotReadableExceptionpublic void write(java.lang.Object o,
java.lang.reflect.Type type,
org.springframework.http.MediaType contentType,
org.springframework.http.HttpOutputMessage outputMessage)
throws java.io.IOException,
org.springframework.http.converter.HttpMessageNotWritableException
write in interface org.springframework.http.converter.GenericHttpMessageConverter<java.lang.Object>java.io.IOExceptionorg.springframework.http.converter.HttpMessageNotWritableExceptionprotected java.lang.Object readInternal(java.lang.Class<?> clazz,
org.springframework.http.HttpInputMessage inputMessage)
throws java.io.IOException,
org.springframework.http.converter.HttpMessageNotReadableException
readInternal in class org.springframework.http.converter.AbstractHttpMessageConverter<java.lang.Object>java.io.IOExceptionorg.springframework.http.converter.HttpMessageNotReadableExceptionpublic static void setRequestBodyInitialCapacity(int initialCapacity)
protected static int calcInitialCapacity(long contentLength)
contentLength - The content length of the request message. If -1 is passed, it means unknown.protected static byte[] fastRead(java.io.InputStream in,
long contentLength)
throws java.io.IOException
in - the specified input streamcontentLength - -1 means unknownjava.io.IOExceptionprivate static int newLength(int oldLength,
int minGrowth,
int prefGrowth)
private static int hugeLength(int oldLength,
int minGrowth)
protected java.lang.Object readType(java.lang.reflect.Type type,
org.springframework.http.HttpInputMessage inputMessage)
protected void writeInternal(java.lang.Object object,
org.springframework.http.HttpOutputMessage outputMessage)
throws java.io.IOException,
org.springframework.http.converter.HttpMessageNotWritableException
writeInternal in class org.springframework.http.converter.AbstractHttpMessageConverter<java.lang.Object>java.io.IOExceptionorg.springframework.http.converter.HttpMessageNotWritableExceptionprotected java.lang.reflect.Type getType(java.lang.reflect.Type type,
java.lang.Class<?> contextClass)