Class AbstractKotlinSerializationHttpMessageConverter<T extends kotlinx.serialization.SerialFormat>
java.lang.Object
org.springframework.http.converter.AbstractHttpMessageConverter<T>
org.springframework.http.converter.AbstractGenericHttpMessageConverter<Object>
org.springframework.http.converter.AbstractKotlinSerializationHttpMessageConverter<T>
- Type Parameters:
- T- the type of- SerialFormat
- All Implemented Interfaces:
- GenericHttpMessageConverter<Object>,- HttpMessageConverter<Object>
- Direct Known Subclasses:
- KotlinSerializationBinaryHttpMessageConverter,- KotlinSerializationStringHttpMessageConverter
public abstract class AbstractKotlinSerializationHttpMessageConverter<T extends kotlinx.serialization.SerialFormat>
extends AbstractGenericHttpMessageConverter<Object>
Abstract base class for 
HttpMessageConverter implementations that
 use Kotlin serialization.- Since:
- 6.0
- Author:
- Andreas Ahlenstorf, Sebastien Deleuze, Juergen Hoeller, Iain Henderson, Arjen Poutsma
- 
Field SummaryFields inherited from class org.springframework.http.converter.AbstractHttpMessageConverterlogger
- 
Constructor SummaryConstructorsModifierConstructorDescriptionprotectedAbstractKotlinSerializationHttpMessageConverter(T format, MediaType... supportedMediaTypes) Construct anAbstractKotlinSerializationHttpMessageConverterwith multiple supported media type and format.
- 
Method SummaryModifier and TypeMethodDescriptionbooleanIndicates whether the given type can be read by this converter.booleanIndicates whether the given class can be written by this converter.final Objectread(Type type, Class<?> contextClass, HttpInputMessage inputMessage) Read an object of the given type form the given input message, and returns it.protected final ObjectreadInternal(Class<?> clazz, HttpInputMessage inputMessage) Abstract template method that reads the actual object.protected abstract ObjectreadInternal(kotlinx.serialization.KSerializer<Object> serializer, T format, HttpInputMessage inputMessage) Reads the given input message with the given serializer and format.protected booleanIndicates whether the given class is supported by this converter.protected booleansupportsRepeatableWrites(Object object) Indicates whether this message converter can write the given object multiple times.protected final voidwriteInternal(Object object, Type type, HttpOutputMessage outputMessage) Abstract template method that writes the actual body.protected abstract voidwriteInternal(Object object, kotlinx.serialization.KSerializer<Object> serializer, T format, HttpOutputMessage outputMessage) Write the given object to the output message with the given serializer and format.Methods inherited from class org.springframework.http.converter.AbstractGenericHttpMessageConverterwrite, writeInternalMethods inherited from class org.springframework.http.converter.AbstractHttpMessageConverteraddDefaultHeaders, canRead, canRead, canWrite, canWrite, getContentLength, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, writeMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.http.converter.HttpMessageConvertercanRead, canWrite, getSupportedMediaTypes, getSupportedMediaTypes, read, write
- 
Constructor Details- 
AbstractKotlinSerializationHttpMessageConverterprotected AbstractKotlinSerializationHttpMessageConverter(T format, MediaType... supportedMediaTypes) Construct anAbstractKotlinSerializationHttpMessageConverterwith multiple supported media type and format.- Parameters:
- format- the format
- supportedMediaTypes- the supported media types
 
 
- 
- 
Method Details- 
supportsDescription copied from class:AbstractHttpMessageConverterIndicates whether the given class is supported by this converter.- Overrides:
- supportsin class- AbstractGenericHttpMessageConverter<Object>
- Parameters:
- clazz- the class to test for support
- Returns:
- trueif supported;- falseotherwise
 
- 
canReadDescription copied from interface:GenericHttpMessageConverterIndicates whether the given type can be read by this converter. This method should perform the same checks asHttpMessageConverter.canRead(Class, MediaType)with additional ones related to the generic type.- Specified by:
- canReadin interface- GenericHttpMessageConverter<T extends kotlinx.serialization.SerialFormat>
- Overrides:
- canReadin class- AbstractGenericHttpMessageConverter<Object>
- Parameters:
- type- the (potentially generic) type to test for readability
- 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)
- mediaType- the media type to read, can be- nullif not specified. Typically, the value of a- Content-Typeheader.
- Returns:
- trueif readable;- falseotherwise
 
- 
canWriteDescription copied from interface:GenericHttpMessageConverterIndicates whether the given class can be written by this converter.This method should perform the same checks as HttpMessageConverter.canWrite(Class, MediaType)with additional ones related to the generic type.- Specified by:
- canWritein interface- GenericHttpMessageConverter<T extends kotlinx.serialization.SerialFormat>
- Overrides:
- canWritein class- AbstractGenericHttpMessageConverter<Object>
- Parameters:
- type- the (potentially generic) type to test for writability (can be- nullif not specified)
- clazz- the source object class to test for writability
- mediaType- the media type to write (can be- nullif not specified); typically the value of an- Acceptheader.
- Returns:
- trueif writable;- falseotherwise
 
- 
readpublic final Object read(Type type, @Nullable Class<?> contextClass, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException Description copied from interface:GenericHttpMessageConverterRead an object of the given type form the given input message, and returns it.- Parameters:
- type- the (potentially generic) type of object to return. This type must have previously been passed to the- canReadmethod 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 from
- Returns:
- the converted object
- Throws:
- IOException- in case of I/O errors
- HttpMessageNotReadableException- in case of conversion errors
 
- 
readInternalprotected final Object readInternal(Class<?> 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 class- AbstractHttpMessageConverter<Object>
- Parameters:
- clazz- the type of object to return
- inputMessage- the HTTP input message to read from
- Returns:
- the converted object
- Throws:
- IOException- in case of I/O errors
- HttpMessageNotReadableException- in case of conversion errors
 
- 
readInternalprotected abstract Object readInternal(kotlinx.serialization.KSerializer<Object> serializer, T format, HttpInputMessage inputMessage) throws IOException, HttpMessageNotReadableException Reads the given input message with the given serializer and format.
- 
writeInternalprotected final void writeInternal(Object object, @Nullable Type type, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException Description copied from class:AbstractGenericHttpMessageConverterAbstract template method that writes the actual body. Invoked fromAbstractGenericHttpMessageConverter.write(T, java.lang.reflect.Type, org.springframework.http.MediaType, org.springframework.http.HttpOutputMessage).- Specified by:
- writeInternalin class- AbstractGenericHttpMessageConverter<Object>
- Parameters:
- object- the object to write to the output message
- type- the type of object to write (may be- null)
- outputMessage- the HTTP output message to write to
- Throws:
- IOException- in case of I/O errors
- HttpMessageNotWritableException- in case of conversion errors
 
- 
writeInternalprotected abstract void writeInternal(Object object, kotlinx.serialization.KSerializer<Object> serializer, T format, HttpOutputMessage outputMessage) throws IOException, HttpMessageNotWritableException Write the given object to the output message with the given serializer and format.
- 
supportsRepeatableWritesDescription copied from class:AbstractHttpMessageConverterIndicates whether this message converter can write the given object multiple times.The default implementation returns false.- Overrides:
- supportsRepeatableWritesin class- AbstractHttpMessageConverter<Object>
- Parameters:
- object- the object t
- Returns:
- trueif- tcan be written repeatedly;- falseotherwise
 
 
-