## Uses of Interface
org.springframework.core.codec.Encoder

- Packages that use Encoder
  Package | Description
  --- | ---
  org.springframework.core.codec | `Encoder` and `Decoder` abstractions to convert between a reactive stream of bytes and Java objects.
  org.springframework.http.codec | Provides implementations of `Encoder` and `Decoder` for web use.
  org.springframework.http.codec.cbor |
  org.springframework.http.codec.json | JSON encoder and decoder support.
  org.springframework.http.codec.protobuf | Provides an encoder and a decoder for Google Protocol Buffers.
  org.springframework.http.codec.xml | XML encoder and decoder support.
  org.springframework.messaging.handler.invocation.reactive | Common infrastructure for invoking message handler methods with non-blocking, and reactive contracts.
  org.springframework.messaging.rsocket | Support for the RSocket protocol.
  org.springframework.messaging.rsocket.annotation.support | Support classes for working with annotated RSocket stream handling methods.
  org.springframework.web.reactive.result.view | Support for result handling through view resolution.

- - ### Uses of Encoder in org.springframework.core.codec

    Classes in org.springframework.core.codec that implement Encoder
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractEncoder<T>` Abstract base class for `Encoder` implementations.
    `class` | `AbstractSingleValueEncoder<T>` Abstract base class for `Encoder` classes that can only deal with a single value.
    `class` | `ByteArrayEncoder` Encoder for `byte` arrays.
    `class` | `ByteBufferEncoder` Encoder for `ByteBuffers`.
    `class` | `CharSequenceEncoder` Encode from a `CharSequence` stream to a bytes stream.
    `class` | `DataBufferEncoder` Simple pass-through encoder for `DataBuffers`.
    `class` | `NettyByteBufEncoder` Encoder for `ByteBufs`.
    `class` | `ResourceEncoder` Encoder for `Resources`.
    `class` | `ResourceRegionEncoder` Encoder for `ResourceRegions`.

  - ### Uses of Encoder in org.springframework.http.codec

    Subinterfaces of Encoder in org.springframework.http.codec
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `HttpMessageEncoder<T>` Extension of `Encoder` exposing extra methods relevant in the context of HTTP request or response body encoding.

    Methods in org.springframework.http.codec that return Encoder
    Modifier and Type | Method and Description
    --- | ---
    `Encoder<T>` | EncoderHttpMessageWriter.`getEncoder()` Return the `Encoder` of this writer.
    `Encoder<?>` | ServerSentEventHttpMessageWriter.`getEncoder()` Return the configured `Encoder`, if any.

    Methods in org.springframework.http.codec with parameters of type Encoder
    Modifier and Type | Method and Description
    --- | ---
    `void` | CodecConfigurer.CustomCodecs.`encoder(Encoder<?> encoder)` Deprecated. as of 5.1.13, use `CodecConfigurer.CustomCodecs.register(Object)` or `CodecConfigurer.CustomCodecs.registerWithDefaultConfig(Object)` instead.
    `ClientCodecConfigurer.MultipartCodecs` | ClientCodecConfigurer.MultipartCodecs.`encoder(Encoder<?> encoder)` Add a Part `Encoder`, internally wrapped with `EncoderHttpMessageWriter`.
    `void` | CodecConfigurer.DefaultCodecs.`jackson2JsonEncoder(Encoder<?> encoder)` Override the default Jackson JSON `Encoder`.
    `void` | CodecConfigurer.DefaultCodecs.`jackson2SmileEncoder(Encoder<?> encoder)` Override the default Jackson Smile `Encoder`.
    `void` | CodecConfigurer.DefaultCodecs.`jaxb2Encoder(Encoder<?> encoder)` Override the default JABX2 `Encoder`.
    `void` | CodecConfigurer.DefaultCodecs.`kotlinSerializationJsonEncoder(Encoder<?> encoder)` Override the default Kotlin Serialization JSON `Encoder`.
    `void` | CodecConfigurer.DefaultCodecs.`protobufEncoder(Encoder<?> encoder)` Override the default Protobuf `Encoder`.
    `void` | ServerCodecConfigurer.ServerDefaultCodecs.`serverSentEventEncoder(Encoder<?> encoder)` Configure the `Encoder` to use for Server-Sent Events.

    Constructors in org.springframework.http.codec with parameters of type Encoder
    Constructor and Description
    `EncoderHttpMessageWriter(Encoder<T> encoder)` Create an instance wrapping the given `Encoder`.
    `ServerSentEventHttpMessageWriter(Encoder<?> encoder)` Constructor with JSON `Encoder` for encoding objects.

  - ### Uses of Encoder in org.springframework.http.codec.cbor

    Classes in org.springframework.http.codec.cbor that implement Encoder
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Jackson2CborEncoder` Encode from an `Object` to bytes of CBOR objects using Jackson.

  - ### Uses of Encoder in org.springframework.http.codec.json

    Classes in org.springframework.http.codec.json that implement Encoder
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractJackson2Encoder` Base class providing support methods for Jackson 2.9 encoding.
    `class` | `Jackson2JsonEncoder` Encode from an `Object` stream to a byte stream of JSON objects using Jackson 2.9.
    `class` | `Jackson2SmileEncoder` Encode from an `Object` stream to a byte stream of Smile objects using Jackson 2.9.
    `class` | `KotlinSerializationJsonEncoder` Encode from an `Object` stream to a byte stream of JSON objects using kotlinx.serialization.

  - ### Uses of Encoder in org.springframework.http.codec.protobuf

    Classes in org.springframework.http.codec.protobuf that implement Encoder
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ProtobufEncoder` An `Encoder` that writes `Message`s using Google Protocol Buffers.

    Constructors in org.springframework.http.codec.protobuf with parameters of type Encoder
    Constructor and Description
    `ProtobufHttpMessageWriter(Encoder<com.google.protobuf.Message> encoder)` Create a new `ProtobufHttpMessageWriter` with the given encoder.

  - ### Uses of Encoder in org.springframework.http.codec.xml

    Classes in org.springframework.http.codec.xml that implement Encoder
    Modifier and Type | Class and Description
    --- | ---
    `class` | `Jaxb2XmlEncoder` Encode from single value to a byte stream containing XML elements.

  - ### Uses of Encoder in org.springframework.messaging.handler.invocation.reactive

    Methods in org.springframework.messaging.handler.invocation.reactive that return types with arguments of type Encoder
    Modifier and Type | Method and Description
    --- | ---
    `List<Encoder<?>>` | AbstractEncoderMethodReturnValueHandler.`getEncoders()` The configured encoders.

    Constructor parameters in org.springframework.messaging.handler.invocation.reactive with type arguments of type Encoder
    Constructor and Description
    `AbstractEncoderMethodReturnValueHandler(List<Encoder<?>> encoders, ReactiveAdapterRegistry registry)`

  - ### Uses of Encoder in org.springframework.messaging.rsocket

    Methods in org.springframework.messaging.rsocket that return Encoder
    Modifier and Type | Method and Description
    --- | ---
    `default <T> Encoder<T>` | RSocketStrategies.`encoder(ResolvableType elementType, MimeType mimeType)` Find a compatible Encoder for the given element type.

    Methods in org.springframework.messaging.rsocket that return types with arguments of type Encoder
    Modifier and Type | Method and Description
    --- | ---
    `List<Encoder<?>>` | RSocketStrategies.`encoders()` Return the configured `encoders`.

    Methods in org.springframework.messaging.rsocket with parameters of type Encoder
    Modifier and Type | Method and Description
    --- | ---
    `RSocketStrategies.Builder` | RSocketStrategies.Builder.`encoder(Encoder<?>... encoder)` Append to the list of encoders to use for serializing Objects to the data or metadata of a `Payload`.

    Method parameters in org.springframework.messaging.rsocket with type arguments of type Encoder
    Modifier and Type | Method and Description
    --- | ---
    `RSocketStrategies.Builder` | RSocketStrategies.Builder.`encoders(Consumer<List<Encoder<?>>> consumer)` Apply the consumer to the list of configured encoders, immediately.

  - ### Uses of Encoder in org.springframework.messaging.rsocket.annotation.support

    Methods in org.springframework.messaging.rsocket.annotation.support that return types with arguments of type Encoder
    Modifier and Type | Method and Description
    --- | ---
    `List<? extends Encoder<?>>` | RSocketMessageHandler.`getEncoders()` Return the configured `encoders`.

    Method parameters in org.springframework.messaging.rsocket.annotation.support with type arguments of type Encoder
    Modifier and Type | Method and Description
    --- | ---
    `void` | RSocketMessageHandler.`setEncoders(List<? extends Encoder<?>> encoders)` Configure the encoders to use for encoding handler method return values.

    Constructor parameters in org.springframework.messaging.rsocket.annotation.support with type arguments of type Encoder
    Constructor and Description
    `RSocketPayloadReturnValueHandler(List<Encoder<?>> encoders, ReactiveAdapterRegistry registry)`

  - ### Uses of Encoder in org.springframework.web.reactive.result.view

    Constructors in org.springframework.web.reactive.result.view with parameters of type Encoder
    Constructor and Description
    `HttpMessageWriterView(Encoder<?> encoder)` Constructor with an `Encoder`.