In this section we will see how to use all this power gathered together: Apache Avro, Schema Registry, and Kafka Streams.
Now, we are going to use Avro format in our messages, as we did in previous chapters. We consumed this data by configuring the Schema Registry URL and using the Kafka Avro deserializer. For Kafka Streams, we need to use a Serde, so we added the dependency in the Gradle build file, given as follows:
compile 'io.confluent:kafka-streams-avro-serde:5.0.0'
This dependency has the GenericAvroSerde and specific avroSerde explained in previous chapters. Both Serde implementations allow us to work with Avro records.
Now, in the src/main/java/kioto/avro directory, create a file called AvroStreamsProcessor.java with the contents of Listing 6.4, shown as follows:
import ...
public final class AvroStreamsProcessor {
private final...