franzy.serialization.deserializers

Implementations of core Apache Kafka and Franzy deserializers. For more serializers, see Franzy docs.

->DebugDeserializer

(->DebugDeserializer logging-fn deserializer)

Positional factory function for class franzy.serialization.deserializers.DebugDeserializer.

->EdnDeserializer

(->EdnDeserializer opts)

Positional factory function for class franzy.serialization.deserializers.EdnDeserializer.

->KeywordDeserializer

(->KeywordDeserializer)

Positional factory function for class franzy.serialization.deserializers.KeywordDeserializer.

->SimpleEdnDeserializer

(->SimpleEdnDeserializer opts)

Positional factory function for class franzy.serialization.deserializers.SimpleEdnDeserializer.

byte-array-deserializer

(byte-array-deserializer)

Kafka raw byte array deserializer. Useful for value deserialization.

debug-deserializer

(debug-deserializer logging-fn deserializer)

Simple debug serializer that wraps your deserializer and desired logging function. The logging function should take at least a single arity. The function will receive a map of state information with the following possible keys, which you may choose to destructure accordingly:

  • :deserializer - An instance of the deserializer itself
  • :fn - Keyword name of the function being logged. Possible values [:configure :serialize :close]
  • :configs - Optional, present when configuring serializer, and only applicable for certain types of serializers
  • :is-key - Optional, present when configuring the serializer, and only applicable for certain types of serializers
  • :topic The topic being serialized, when calling serialize.
  • :data The data being serialized, when calling serialize.

Example usage:

(debug-deserializer (fn [{:keys [fn deserializer configs is-key topic data] :as m}] (timbre/debug "full debug map:" m) (when data (timbre/info "data:" data))) (edn-deserializer))

deserializer

(deserializer deserialize-fn)(deserializer deserialize-fn configure-fn close-fn)

edn-deserializer

(edn-deserializer)(edn-deserializer opts)

An EDN deserializer for Kafka. Contents of each item serialized must fit in memory.

Note: Any users of EDN deserializers should note the usual serialization/deserialization attack vectors. You should always validate any data before it is serialized so that an attack may not be executed on deserialization. Although EDN facilities try to protect you against this, nothing in this life is ever for sure. Be vigilant.

integer-deserializer

(integer-deserializer)

Kafka integer deserializer. Useful for key deserialization.

keyword-deserializer

(keyword-deserializer)

A deserializer that deserializes string values as keywords. Useful for key deserializers.

long-deserializer

(long-deserializer)

Kafka long deserializer. Useful for key deserialization.

simple-edn-deserializer

(simple-edn-deserializer)(simple-edn-deserializer opts)

A Simple EDN deserializer for Kafka. Useful for value deserialization.

string-deserializer

(string-deserializer)

Kafka string deserializer. Useful for key deserialization.