anchor.diff:      }
   }
   ----
  -<1> Inject a Reactive Messaging `Emitter` to send messsages to the `quote-requests` channel.
  +<1> Inject a Reactive Messaging `Emitter` to send messages to the `quote-requests` channel.
   <2> On a post request, generate a random UUID and send it to the Kafka topic using the emitter.
   
  -This channel is mapped to Kafka using the configuration we will add to the `application.properties` file:
  +We need to instruct Quarkus to map the `quote-requests` channel to a Kafka topic.
  +In the `src/main/resources/application.properties` of the _producer_ project, add:
   
   [source, properties]
   ----
  
positive.code: Previously we've seen the usage of `ObjectMapperSerializer` to serialize objects via Jackson.
  For the corresponding deserializer class, we need to create a subclass of `ObjectMapperDeserializer`.
  
  So, let's create it inside `producer` project on `src/main/java/org/acme/kafka/model/QuoteDeserializer.java`
  
  [source,java]
  ----
  
negative.code: 
  image::kafka-qs-architecture.png[alt=Architecture, align=center]
  
  The first application, the _producer_, will let the user request some quotes over a HTTP endpoint.
  For each quote request a random identifier is generated and returned to the user, to put the quote request on _pending_.
  At the same time the generated request id is sent over a Kafka topic `quote-requests`.
  
  image::kafka-qs-app-screenshot.png[alt=Producer App UI, align=center]
  
  The second application, the _processor_, in turn, will read from the `quote-requests` topic put a random price to the quote, and send it to a Kafka topic named `quotes`.
  
  Lastly, the _producer_ will read the quotes and send them to the browser using server-sent events.
  The user will therefore see the quote price updated from _pending_ to the received price in real-time.
  
  == Solution
  