Status

Current state: "Accepted"

Discussion thread: here

Github PR: here

Jira: 

Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).

Motivation

We want to make sure that we always have a serde for all Materialized, Serialized, Joined, Consumed and Produced.
For that we can make use of the implicit parameters in Scala.

Public Interfaces

Add of the following:

org.apache.kafka.streams.scala.kstream.Materialized
org.apache.kafka.streams.scala.kstream.Serialized
org.apache.kafka.streams.scala.kstream.Joined
org.apache.kafka.streams.scala.kstream.Consumed
org.apache.kafka.streams.scala.kstream.Produced

Proposed Changes

Add of helper functions to create Materialized, Serialized, Joined, Consumed and Produced with serdes implicitly given so that we are sure to not miss any.

Compatibility, Deprecation, and Migration Plan

Overload and deprecate, then remove the deprecated.

Rejected Alternatives

NA