Package org.springframework.http.codec
Interface CodecConfigurer
- All Known Subinterfaces:
ClientCodecConfigurer
,ServerCodecConfigurer
- All Known Implementing Classes:
DefaultClientCodecConfigurer
,DefaultServerCodecConfigurer
public interface CodecConfigurer
Defines a common interface for configuring either client or server HTTP
message readers and writers. This is used as follows:
- Use
ClientCodecConfigurer.create()
orServerCodecConfigurer.create()
to create an instance. - Use
defaultCodecs()
to customize HTTP message readers or writers registered by default. - Use
customCodecs()
to add custom HTTP message readers or writers. - Use
getReaders()
andgetWriters()
to obtain the list of configured HTTP message readers and writers.
HTTP message readers and writers are divided into 3 categories that are ordered as follows:
- Typed readers and writers that support specific types, e.g. byte[], String.
- Object readers and writers, e.g. JSON, XML.
- Catch-all readers or writers, e.g. String with any media type.
Typed and object readers are further subdivided and ordered as follows:
- Default HTTP reader and writer registrations.
- Custom readers and writers.
- Since:
- 5.0
- Author:
- Rossen Stoyanchev
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
Registry for custom HTTP message readers and writers.static interface
Exposes the values of properties configured throughdefaultCodecs()
that are applied to default codecs.static interface
Customize or replace the HTTP message readers and writers registered by default. -
Method Summary
Modifier and TypeMethodDescriptionclone()
Create a copy of thisCodecConfigurer
.Register custom HTTP message readers or writers in addition to the ones registered by default.Provides a way to customize or replace HTTP message readers and writers registered by default.Obtain the configured HTTP message readers.Obtain the configured HTTP message writers.void
registerDefaults
(boolean registerDefaults) Provides a way to completely turn off registration of default HTTP message readers and writers, and instead rely only on the ones provided viacustomCodecs()
.
-
Method Details
-
defaultCodecs
CodecConfigurer.DefaultCodecs defaultCodecs()Provides a way to customize or replace HTTP message readers and writers registered by default.- See Also:
-
customCodecs
CodecConfigurer.CustomCodecs customCodecs()Register custom HTTP message readers or writers in addition to the ones registered by default. -
registerDefaults
void registerDefaults(boolean registerDefaults) Provides a way to completely turn off registration of default HTTP message readers and writers, and instead rely only on the ones provided viacustomCodecs()
.By default this is set to
"true"
in which case default registrations are made; setting this tofalse
disables default registrations. -
getReaders
List<HttpMessageReader<?>> getReaders()Obtain the configured HTTP message readers. -
getWriters
List<HttpMessageWriter<?>> getWriters()Obtain the configured HTTP message writers. -
clone
CodecConfigurer clone()Create a copy of thisCodecConfigurer
. The returned clone has its own lists of default and custom codecs and generally can be configured independently. Keep in mind however that codec instances (if any are configured) are themselves not cloned.- Since:
- 5.1.12
-