anchor.diff:  
   [source,xml]
   ----
  -
   <dependency>
       <groupId>io.quarkus</groupId>
       <artifactId>quarkus-resteasy-reactive-jackson</artifactId>
  
positive.code: 
  The `channel-name` segment must match the value set in the `@Incoming` and `@Outgoing` annotation:
  
  * `generated-price` -> sink in which we write the prices
  * `prices` -> source in which we read the prices
  
  [source,properties]
  ----
  
  # Configure the Kafka sink (we write to it)
  mp.messaging.outgoing.generated-price.connector=smallrye-kafka
  mp.messaging.outgoing.generated-price.topic=prices
  mp.messaging.outgoing.generated-price.value.serializer=io.quarkus.kafka.client.serialization.ObjectMapperSerializer
  
  # Configure the Kafka source (we read from it)
  mp.messaging.incoming.prices.connector=smallrye-kafka
  mp.messaging.incoming.prices.topic=prices
  mp.messaging.incoming.prices.value.deserializer=org.acme.kafka.PriceDeserializer
  
negative.code: In this guide, we are going to generate (random) prices in one component.
  These prices are written in a Kafka topic (`prices`).
  A second component reads from the `prices` Kafka topic and apply some magic conversion to the price.
  The result is sent to an in-memory channel consumed by a JAX-RS resource.
  The data is sent to a browser using server-sent events.
  
  image::kafka-guide-architecture.png[alt=Architecture, align=center]
  