Top Description Inners Fields Constructors Methods
org.springframework.http.codec.support

pack-priv Class BaseDefaultCodecs

extends Object
implements DefaultCodecs, DefaultCodecConfig
Class Inheritance
All Implemented Interfaces
org.springframework.http.codec.CodecConfigurer.DefaultCodecConfig, org.springframework.http.codec.CodecConfigurer.DefaultCodecs
Known Direct Subclasses
org.springframework.http.codec.support.ClientDefaultCodecsImpl, org.springframework.http.codec.support.ServerDefaultCodecsImpl
Imports
java.util.ArrayList, .Collections, .List, .Map, java.util.function.Consumer, .Supplier, org.springframework.core.codec.AbstractDataBufferDecoder, .ByteArrayDecoder, .ByteArrayEncoder, .ByteBufferDecoder, .ByteBufferEncoder, .CharSequenceEncoder, .DataBufferDecoder, .DataBufferEncoder, .Decoder, .Encoder, .Netty5BufferDecoder, .Netty5BufferEncoder, .NettyByteBufDecoder, .NettyByteBufEncoder, .ResourceDecoder, .StringDecoder, org.springframework.http.codec.CodecConfigurer, .DecoderHttpMessageReader, .EncoderHttpMessageWriter, .FormHttpMessageReader, .FormHttpMessageWriter, .HttpMessageReader, .HttpMessageWriter, .ResourceHttpMessageReader, .ResourceHttpMessageWriter, .ServerSentEventHttpMessageReader, .ServerSentEventHttpMessageWriter, org.springframework.http.codec.cbor.KotlinSerializationCborDecoder, .KotlinSerializationCborEncoder, org.springframework.http.codec.json.AbstractJackson2Decoder, .Jackson2JsonDecoder, .Jackson2JsonEncoder, .Jackson2SmileDecoder, .Jackson2SmileEncoder, .KotlinSerializationJsonDecoder, .KotlinSerializationJsonEncoder, org.springframework.http.codec.multipart.DefaultPartHttpMessageReader, .MultipartHttpMessageReader, .MultipartHttpMessageWriter, .PartEventHttpMessageReader, .PartEventHttpMessageWriter, .PartHttpMessageWriter, org.springframework.http.codec.protobuf.KotlinSerializationProtobufDecoder, .KotlinSerializationProtobufEncoder, .ProtobufDecoder, .ProtobufEncoder, .ProtobufHttpMessageWriter, org.springframework.http.codec.xml.Jaxb2XmlDecoder, .Jaxb2XmlEncoder, org.springframework.lang.Nullable, org.springframework.util.ClassUtils, .ObjectUtils

Default implementation of CodecConfigurer.DefaultCodecs that serves as a base for client and server specific variants.
Authors
Rossen Stoyanchev, Sebastien Deleuze

Nested and Inner Type Summary

Modifier and TypeClass and Description
protected class

Field Summary

Modifier and TypeField and Description
private Consumer<Object>
private Boolean
private Decoder<?>
private Encoder<?>
pack-priv static final boolean
private Decoder<?>
private Encoder<?>
private static final boolean
private Decoder<?>
private Encoder<?>
private static final boolean
private Decoder<?>
private Encoder<?>
pack-priv static final boolean
private Decoder<?>
private Encoder<?>
pack-priv static final boolean
private Decoder<?>
private Encoder<?>
pack-priv static final boolean
private Integer
private BaseDefaultCodecs.DefaultMultipartCodecs
private HttpMessageReader<?>
pack-priv static final boolean
pack-priv static final boolean
private final List<HttpMessageReader<?>>
private final List<HttpMessageWriter<?>>
private Supplier<List<HttpMessageWriter<?>>>
private Decoder<?>
private Encoder<?>
private static final boolean
private boolean
pack-priv static final boolean
private final List<HttpMessageReader<?>>
private final List<HttpMessageWriter<?>>

Constructor Summary

AccessConstructor and Description
pack-priv
protected
BaseDefaultCodecs(BaseDefaultCodecs other)

Create a deep copy of the given BaseDefaultCodecs.

Method Summary

Modifier and TypeMethod and Description
protected <T> void
addCodec(List<T> codecs, T codec)

Initialize a codec and add it to the List.

pack-priv void
private void
public void
configureDefaultCodec(Consumer<Object>
the consumer to apply
codecConsumer
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.configureDefaultCodec.

Register a consumer to apply to default config instances.

public void
enableLoggingRequestDetails(boolean
whether to enable or not
enable
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.enableLoggingRequestDetails.

Whether to log form data at DEBUG level, and headers at TRACE level.

protected void
extendObjectReaders(List<HttpMessageReader<?>> objectReaders)

Hook for client or server specific Object readers.

protected void
extendObjectWriters(List<HttpMessageWriter<?>> objectWriters)

Hook for client or server specific Object writers.

protected void
extendTypedReaders(List<HttpMessageReader<?>> typedReaders)

Hook for client or server specific typed readers.

protected void
extendTypedWriters(List<HttpMessageWriter<?>> typedWriters)

Hook for client or server specific typed writers.

pack-priv final List<HttpMessageWriter<?>>
getBaseObjectWriters()

Return "base" object writers only, i.e. common to client and server.

pack-priv final List<HttpMessageWriter<?>>
getBaseTypedWriters()

Return "base" typed writers only, i.e. common to client and server.

pack-priv final List<HttpMessageReader<?>>
getCatchAllReaders()

Return readers that need to be at the end, after all others.

pack-priv List<HttpMessageWriter<?>>
getCatchAllWriters()

Return writers that need to be at the end, after all others.

protected Decoder<?>
protected Encoder<?>
protected Decoder<?>
protected Encoder<?>
pack-priv final List<HttpMessageReader<?>>
getObjectReaders()

Return Object readers (JSON, XML, SSE).

pack-priv final List<HttpMessageWriter<?>>
getObjectWriters()

Return Object writers (JSON, XML, SSE).

private List<HttpMessageWriter<?>>
pack-priv final List<HttpMessageReader<?>>
getTypedReaders()

Return readers that support specific types.

pack-priv final List<HttpMessageWriter<?>>
getTypedWriters()

Return all writers that support specific types.

private void
initCodec(Object codec)

Apply maxInMemorySize() and enableLoggingRequestDetails, if configured by the application, to the given codec , including any codec it contains.

protected void
initObjectReaders()

Reset and initialize object readers.

protected void
initObjectWriters()

Reset and initialize object writers.

protected void
initReaders()

Reset and initialize typed readers and object readers.

protected void
initTypedReaders()

Reset and initialize typed readers.

protected void
initTypedWriters()

Reset and initialize typed writers.

protected void
initWriters()

Reset and initialize typed writers and object writers.

public Boolean
isEnableLoggingRequestDetails()

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecConfig.isEnableLoggingRequestDetails.

Whether to log form data at DEBUG level, and headers at TRACE level.

public void
jackson2JsonDecoder(Decoder<?>
the decoder instance to use
decoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.jackson2JsonDecoder.

Override the default Jackson JSON Decoder.

public void
jackson2JsonEncoder(Encoder<?>
the encoder instance to use
encoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.jackson2JsonEncoder.

Override the default Jackson JSON Encoder.

public void
jackson2SmileDecoder(Decoder<?>
the decoder instance to use
decoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.jackson2SmileDecoder.

Override the default Jackson Smile Decoder.

public void
jackson2SmileEncoder(Encoder<?>
the encoder instance to use
encoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.jackson2SmileEncoder.

Override the default Jackson Smile Encoder.

public void
jaxb2Decoder(Decoder<?>
the decoder instance to use
decoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.jaxb2Decoder.

Override the default JAXB2 Decoder.

public void
jaxb2Encoder(Encoder<?>
the encoder instance to use
encoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.jaxb2Encoder.

Override the default JABX2 Encoder.

public void
kotlinSerializationCborDecoder(Decoder<?>
the decoder instance to use
decoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.kotlinSerializationCborDecoder.

Override the default Kotlin Serialization CBOR Decoder.

public void
kotlinSerializationCborEncoder(Encoder<?>
the encoder instance to use
encoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.kotlinSerializationCborEncoder.

Override the default Kotlin Serialization CBOR Encoder.

public void
kotlinSerializationJsonDecoder(Decoder<?>
the decoder instance to use
decoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.kotlinSerializationJsonDecoder.

Override the default Kotlin Serialization JSON Decoder.

public void
kotlinSerializationJsonEncoder(Encoder<?>
the encoder instance to use
encoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.kotlinSerializationJsonEncoder.

Override the default Kotlin Serialization JSON Encoder.

public void
kotlinSerializationProtobufDecoder(Decoder<?>
the decoder instance to use
decoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.kotlinSerializationProtobufDecoder.

Override the default Kotlin Serialization Protobuf Decoder.

public void
kotlinSerializationProtobufEncoder(Encoder<?>
the encoder instance to use
encoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.kotlinSerializationProtobufEncoder.

Override the default Kotlin Serialization Protobuf Encoder.

public void
maxInMemorySize(int
the max number of bytes to buffer, or -1 for unlimited
byteCount
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.maxInMemorySize.

Configure a limit on the number of bytes that can be buffered whenever the input stream needs to be aggregated.

public Integer
maxInMemorySize()

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecConfig.maxInMemorySize.

Get the configured limit on the number of bytes that can be buffered whenever the input stream needs to be aggregated.

public CodecConfigurer.MultipartCodecs
public void
multipartReader(HttpMessageReader<?>
the message reader to use for multipart requests.
multipartReader
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.multipartReader.

Configure the HttpMessageReader to use for multipart requests.

public void
protobufDecoder(Decoder<?>
the decoder instance to use
decoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.protobufDecoder.

Override the default Protobuf Decoder.

public void
protobufEncoder(Encoder<?>
the encoder instance to use
encoder
)

Implements org.springframework.http.codec.CodecConfigurer.DefaultCodecs.protobufEncoder.

Override the default Protobuf Encoder.

pack-priv void
registerDefaults(boolean registerDefaults)

Delegate method used from BaseCodecConfigurer#registerDefaults.

pack-priv void
setPartWritersSupplier(Supplier<List<HttpMessageWriter<?>>> supplier)

Set a supplier for part writers to use when multipartCodecs() are not explicitly configured.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait