public class KafkaBundle<C extends io.dropwizard.Configuration>
extends java.lang.Object
implements io.dropwizard.ConfiguredBundle<C>
Modifier and Type | Class and Description |
---|---|
static class |
KafkaBundle.Builder<T extends io.dropwizard.Configuration> |
static interface |
KafkaBundle.FinalBuilder<T extends io.dropwizard.Configuration> |
static interface |
KafkaBundle.InitialBuilder |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
EXTERNAL_HEALTHCHECK_NAME |
static java.lang.String |
HEALTHCHECK_NAME |
Modifier and Type | Method and Description |
---|---|
static KafkaBundle.InitialBuilder |
builder() |
<K,V> org.apache.kafka.clients.consumer.KafkaConsumer<K,V> |
createConsumer(org.apache.kafka.common.serialization.Deserializer<K> keyDeSerializer,
org.apache.kafka.common.serialization.Deserializer<V> valueDeSerializer,
ConsumerConfig consumerConfig,
int instanceId)
creates a new Kafka Consumer with deserializers and consumer config
|
<K,V> org.apache.kafka.clients.consumer.KafkaConsumer<K,V> |
createConsumer(org.apache.kafka.common.serialization.Deserializer<K> keyDeSerializer,
org.apache.kafka.common.serialization.Deserializer<V> valueDeSerializer,
java.lang.String consumerConfigName)
creates a new Kafka Consumer with deserializers and consumer config
|
<K,V> java.util.List<MessageListener<K,V>> |
createMessageListener(MessageListenerRegistration<K,V> registration)
Creates a number of message listeners with the parameters given in the
MessageListenerRegistration . |
<K,V> org.apache.kafka.clients.producer.KafkaProducer<K,V> |
createProducer(org.apache.kafka.common.serialization.Serializer<K> keySerializer,
org.apache.kafka.common.serialization.Serializer<V> valueSerializer,
ProducerConfig producerConfig)
creates a new Kafka Consumer with deserializers and consumer config
|
<K,V> org.apache.kafka.clients.producer.KafkaProducer<K,V> |
createProducer(org.apache.kafka.common.serialization.Serializer<K> keySerializer,
org.apache.kafka.common.serialization.Serializer<V> valueSerializer,
java.lang.String producerConfigName)
creates a new Kafka Consumer with deserializers and consumer config
|
ConsumerConfig |
getConsumerConfiguration(java.lang.String name)
returns a @
ConsumerConfig as defined in the configuration |
ProducerConfig |
getProducerConfiguration(java.lang.String name)
returns a @
ProducerConfig as defined in the configuration |
ExpectedTopicConfiguration |
getTopicConfiguration(java.lang.String name)
Provides a
ExpectedTopicConfiguration that is generated from the values within the
configuration yaml |
void |
initialize(io.dropwizard.setup.Bootstrap<?> bootstrap) |
<K,V> MessageProducer<K,V> |
registerProducer(ProducerRegistration<K,V> registration)
creates a @
MessageProducer based on the data in the ProducerRegistration |
void |
run(C configuration,
io.dropwizard.setup.Environment environment) |
public static final java.lang.String HEALTHCHECK_NAME
public static final java.lang.String EXTERNAL_HEALTHCHECK_NAME
public static KafkaBundle.InitialBuilder builder()
public void initialize(io.dropwizard.setup.Bootstrap<?> bootstrap)
initialize
in interface io.dropwizard.ConfiguredBundle<C extends io.dropwizard.Configuration>
public void run(C configuration, io.dropwizard.setup.Environment environment)
run
in interface io.dropwizard.ConfiguredBundle<C extends io.dropwizard.Configuration>
public ExpectedTopicConfiguration getTopicConfiguration(java.lang.String name) throws ConfigurationException
ExpectedTopicConfiguration
that is generated from the values within the
configuration yamlname
- the name of the topicConfigurationException
- if no such topic exists in the configurationpublic <K,V> java.util.List<MessageListener<K,V>> createMessageListener(MessageListenerRegistration<K,V> registration)
MessageListenerRegistration
.
The depricated fields of the ListenerConfig
from MessageListenerRegistration
are not considered here
K
- the key object typeV
- the value object typeregistration
- the registration configurationpublic <K,V> MessageProducer<K,V> registerProducer(ProducerRegistration<K,V> registration) throws ConfigurationException
MessageProducer
based on the data in the ProducerRegistration
if the kafka bundle is disabled, null is returned
K
- key clazz typeV
- value clazz typeregistration
- the configuration objectConfigurationException
- if the registration
has no ProducerRegistration.getProducerConfig()
and there is no configuration available with the
same name as defined in ProducerRegistration.getProducerConfigName()
public <K,V> org.apache.kafka.clients.consumer.KafkaConsumer<K,V> createConsumer(org.apache.kafka.common.serialization.Deserializer<K> keyDeSerializer, org.apache.kafka.common.serialization.Deserializer<V> valueDeSerializer, java.lang.String consumerConfigName)
Note: after creating a KafkaConsumer
you must always KafkaConsumer.close()
it to avoid resource leaks.
K
- Key object typeV
- Value object typekeyDeSerializer
- deserializer for key objects. If null, value from config or default
StringDeserializer
will be usedvalueDeSerializer
- deserializer for value objects. If null, value from config or *
default * StringDeserializer
* will be usedconsumerConfigName
- name of a valid consumer configpublic <K,V> org.apache.kafka.clients.consumer.KafkaConsumer<K,V> createConsumer(org.apache.kafka.common.serialization.Deserializer<K> keyDeSerializer, org.apache.kafka.common.serialization.Deserializer<V> valueDeSerializer, ConsumerConfig consumerConfig, int instanceId)
Note: after creating a KafkaConsumer
you must always KafkaConsumer.close()
it to avoid resource leaks.
K
- Key object typeV
- Value object typekeyDeSerializer
- deserializer for key objects. If null, value from config or default
StringDeserializer
will be usedvalueDeSerializer
- deserializer for value objects. If null, value from config or *
default * StringDeserializer
* will be usedconsumerConfig
- config of the consumer. If null a consumer with default config values is
created.instanceId
- the id of the consumer that is appended to the client IDpublic <K,V> org.apache.kafka.clients.producer.KafkaProducer<K,V> createProducer(org.apache.kafka.common.serialization.Serializer<K> keySerializer, org.apache.kafka.common.serialization.Serializer<V> valueSerializer, ProducerConfig producerConfig)
Note: after creating a KafkaProducer
you must always KafkaProducer.close()
it to avoid resource leaks.
K
- Key object typeV
- Value object typekeySerializer
- deserializer for key objects. If null, value from config or default StringSerializer
will be usedvalueSerializer
- deserializer for value objects. If null, value from config or * default
* StringSerializer
* will be usedproducerConfig
- config of the producerpublic <K,V> org.apache.kafka.clients.producer.KafkaProducer<K,V> createProducer(org.apache.kafka.common.serialization.Serializer<K> keySerializer, org.apache.kafka.common.serialization.Serializer<V> valueSerializer, java.lang.String producerConfigName)
Note: after creating a KafkaProducer
you must always KafkaProducer.close()
it to avoid resource leaks.
K
- Key object typeV
- Value object typekeySerializer
- deserializer for key objects. If null, value from config or default StringSerializer
will be usedvalueSerializer
- deserializer for value objects. If null, value from config or * default
* StringSerializer
* will be usedproducerConfigName
- name of the producer config to be usedpublic ConsumerConfig getConsumerConfiguration(java.lang.String name)
ConsumerConfig
as defined in the configurationname
- name of the consumer in the configurationConfigurationException
- exception of the configuration does not existpublic ProducerConfig getProducerConfiguration(java.lang.String name)
ProducerConfig
as defined in the configurationname
- name of the producer in the configurationConfigurationException
- exception of the configuration does not exist