All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.jooby.kafka.KafkaConsumerModule Maven / Gradle / Ivy

The newest version!
/*
 * Jooby https://jooby.io
 * Apache License Version 2.0 https://jooby.io/LICENSE.txt
 * Copyright 2014 Edgar Espina
 */
package io.jooby.kafka;

import org.apache.kafka.clients.consumer.KafkaConsumer;

import edu.umd.cs.findbugs.annotations.NonNull;
import io.jooby.Extension;
import io.jooby.Jooby;

/**
 * Kafka consumer module: https://jooby.io/modules/kafka.
 *
 * 

Usage: * *

{@code
 * {
 *   install(new KafkaConsumerModule());
 *
 *   get("/", ctx -> {
 *     KafkaConsumer producer = require(KafkaConsumer.class);
 *     // work with consumer
 *   });
 * }
 * }
* * application.conf: Creates a new kafka consumer module using the kafka.consumer * property key. This key must be present in the application configuration file, like: * *
{@code
 * kafka.consumer.bootstrap.servers = "localhost:9092"
 * kafka.consumer.group.id = "group A"
 * kafka.consumer.key.deserializer = "org.apache.kafka.common.serialization.StringDeserializer"
 * kafka.consumer.value.deserializer = "org.apache.kafka.common.serialization.StringDeserializer"
 * }
* * @author edgar * @since 2.9.3 */ public class KafkaConsumerModule implements Extension { private final String key; /** * Creates a new kafka consumer module. * * @param key Kafka key. */ public KafkaConsumerModule(@NonNull String key) { this.key = key; } /** Creates a new kafka consumer module. Uses the default key: kafka.consumer. */ public KafkaConsumerModule() { this("kafka.consumer"); } @Override public void install(@NonNull Jooby application) { KafkaHelper.install(application, key, KafkaConsumer::new); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy