All Classes and Interfaces
Class
Description
A byte-to-text-safe-byte transform using Base32: eight ASCII symbols per five bytes, over any
alphabet of 32 symbols.
A byte-to-text-safe-byte transform: encodes any bytes as Base64 (RFC 4648) and decodes them back.
Opt-in
DataKeyStrategy that caches a data-encryption key (DEK) and rolls to a fresh one
after maxMessages messages or maxAge has elapsed, whichever comes first.A
Codec<byte[]> transform that appends a 32-bit checksum (big-endian) on encode and
verifies it on decode, rejecting a mismatch with InvalidPayloadException.Converts values of type
T to and from byte[].Adapts a
Codec to Kafka's Deserializer.Produces
Codec instances for arbitrary types, backed by a serialization library.Serializes Redis cache values through the application's
CodecFactory.Settings for serializing Redis cache values through the application's
CodecFactory.Adapts a
Codec to Spring Data Redis's RedisSerializer, so a codec — with whatever
compression or encryption it composes — is what Redis stores:
RedisTemplate<String, Person> template = new RedisTemplate<>();
template.setValueSerializer(CodecRedisSerializer.of(factory, Person.class));
A Kafka
Serde pairing a CodecSerializer and CodecDeserializer over one
codec, for Kafka Streams:
KStream<String, Person> people =
builder.stream("people", Consumed.with(Serdes.String(), new CodecSerde<>(codec)));
Adapts a
Codec to Kafka's Serializer.Base class for stream-based compression transforms, intended for use with
Codec.andThen(Codec).A data-encryption key (DEK) acquired from a
DataKeyProvider: the plaintext key material
used to encrypt or decrypt one message, paired with the id of the key-encryption key (KEK) that
wrapped it and the wrapped (ciphertext) form of the key itself.SPI for envelope-encryption key management, implemented by consumers against an in-process key
store or a remote KMS (AWS KMS, HashiCorp Vault, GCP Cloud KMS, etc.).
Pure lifecycle policy for acquiring the data-encryption key used to encode a message.
Exception indicating that the data provided for decryption is invalid or corrupted.
Compresses with the zlib format (RFC 1950): DEFLATE data wrapped in a two-byte header and
Adler-32 checksum.
Default
DataKeyStrategy: acquires a fresh data-encryption key per message.Exception indicating a failure during the encryption operation.
Envelope-encryption
Codec for byte[]: encrypts with AES-256-GCM under a
per-message data-encryption key (DEK), itself wrapped by a DataKeyProvider and carried
alongside the ciphertext.Builder for
EnvelopeCodec.Registers a
ForyCodecFactory when the application defines a ThreadSafeFory bean.A
CodecFactory backed by Apache Fory: fast binary
serialization for JVM-to-JVM payloads such as cache entries, queue messages and journal records.Auto-configures a
GsonCodecFactory when the Gson backend is on the classpath and no other
CodecFactory bean exists.Produces JSON codecs backed by a shared
Gson instance.Compresses with the gzip format (RFC 1952): DEFLATE data wrapped in a gzip header and CRC-32
trailer.
A byte-to-text-safe-byte transform using hexadecimal (RFC 4648 base16): two ASCII digits per
input byte.
The payload handed to
Codec.decode(byte[]) is malformed, corrupt, or forged: bad framing,
truncation, an authentication-tag or checksum mismatch, text outside an encoding's alphabet, a
corrupt compressed stream, a payload that would expand past a size cap, or one that decodes to a
type this codec does not produce.The value handed to
Codec.encode(T) cannot be encoded: a type the backend has no serializer
for, a cyclic object graph, a class the backend requires to be registered and is not.Auto-configures a
Jackson2CodecFactory when the Jackson 2.x backend is on the classpath
and no other CodecFactory bean exists.Produces JSON codecs backed by a shared Jackson 2.x
ObjectMapper.Auto-configures a
JacksonCodecFactory when the Jackson 3.x backend is on the classpath
and no other CodecFactory bean exists.Produces JSON codecs backed by a shared Jackson 3.x
ObjectMapper.In-process
DataKeyProvider for consumers without a KMS, backed by one or more
key-encryption keys (KEKs) supplied at construction.Builder for
JceDataKeyProvider.Registers a
JsonbCodecFactory when the JSON-B backend and API are on the classpath and no
other backend has claimed the CodecFactory slot.A
CodecFactory backed by Jakarta JSON Binding (JSON-B).Exception indicating that key infrastructure is unavailable.
LZ4 compression as a
Codec<byte[]> transform, for use with Codec.andThen.Auto-configures a
ProtobufCodecFactory when the Protocol Buffers backend is on the
classpath and no other CodecFactory bean exists.Produces codecs for Protocol Buffers messages (
GeneratedMessage subclasses), using each
message type's own Parser.A
Codec<String> whose bytes are simply the text in a charset — no quoting, no framing.Something the codec depends on failed, and the input is not at fault: a key-management service
timed out or throttled, a JCE provider cannot supply a transform, a compressor failed on valid
input, or a provider returned something that violates its contract.
Super type token capturing a full generic type at compile time, surviving erasure.
Signals that a payload carries valid versioned framing but names a version this codec has no
codec registered for.
The payload handed to
Codec.decode(byte[]) is well-formed, but names a format this reader cannot
handle: a version or an algorithm identifier this instance was not built to understand —
typically because a newer writer produced it.Prefixes every payload with a small self-describing header naming the codec that produced it, and
dispatches on that header when decoding — so an application can change its storage strategy
without rewriting what it has already stored.
Collects the per-version codecs and the version to write, and validates them.
Signals that a buffer handed to a versioned codec is not a well-formed versioned payload: it is
shorter than the three-byte header, or it does not carry the versioned magic.
Zstandard (RFC 8878) compression as a
Codec<byte[]> transform, for use with
Codec.andThen.