Package com.bakdata.kafka
Class ReaderBuilder<K,V>
java.lang.Object
com.bakdata.kafka.ReaderBuilder<K,V>
- Type Parameters:
K
- type of keys deserialized by the readerV
- type of values deserialized by the reader
Read data from a Kafka cluster
-
Method Summary
Modifier and TypeMethodDescriptionCreate a newConsumer
for a Kafka clusterRead all data from a topic.Add a consumer configuration<KN,
VN> ReaderBuilder<KN, VN> withDeserializers
(com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<KN>> keyDeserializer, com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<VN>> valueDeserializer) Provide custom deserializers for keys and values.<KN,
VN> ReaderBuilder<KN, VN> withDeserializers
(org.apache.kafka.common.serialization.Deserializer<KN> keyDeserializer, org.apache.kafka.common.serialization.Deserializer<VN> valueDeserializer) Provide custom deserializers for keys and values.<KN> ReaderBuilder<KN,
V> withKeyDeserializer
(com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<KN>> keyDeserializer) Provide custom deserializers for keys.<KN> ReaderBuilder<KN,
V> withKeyDeserializer
(org.apache.kafka.common.serialization.Deserializer<KN> keyDeserializer) Provide custom deserializers for keys.<VN> ReaderBuilder<K,
VN> withValueDeserializer
(com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<VN>> valueDeserializer) Provide custom deserializers for values.<VN> ReaderBuilder<K,
VN> withValueDeserializer
(org.apache.kafka.common.serialization.Deserializer<VN> valueDeserializer) Provide custom deserializers for values.
-
Method Details
-
with
Add a consumer configuration- Parameters:
key
- configuration keyvalue
- configuration value- Returns:
ReaderBuilder
with added configuration
-
from
public List<org.apache.kafka.clients.consumer.ConsumerRecord<K,V>> from(String topic, Duration timeout) Read all data from a topic. This method is idempotent, meaning calling it multiple times will read the same data unless the data in the topic changes.- Parameters:
topic
- topic to read fromtimeout
- consumer poll timeout- Returns:
- consumed records
-
createConsumer
Create a newConsumer
for a Kafka cluster- Returns:
Consumer
-
withDeserializers
public <KN,VN> ReaderBuilder<KN,VN> withDeserializers(com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<KN>> keyDeserializer, com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<VN>> valueDeserializer) Provide custom deserializers for keys and values. Deserializers are configured automatically.- Type Parameters:
KN
- type of keysVN
- type of values- Parameters:
keyDeserializer
- serializer for keysvalueDeserializer
- serializer for values- Returns:
ReaderBuilder
with custom deserializers
-
withDeserializers
public <KN,VN> ReaderBuilder<KN,VN> withDeserializers(org.apache.kafka.common.serialization.Deserializer<KN> keyDeserializer, org.apache.kafka.common.serialization.Deserializer<VN> valueDeserializer) Provide custom deserializers for keys and values. Deserializers are configured automatically.- Type Parameters:
KN
- type of keysVN
- type of values- Parameters:
keyDeserializer
- serializer for keysvalueDeserializer
- serializer for values- Returns:
ReaderBuilder
with custom deserializers- See Also:
-
withKeyDeserializer
public <KN> ReaderBuilder<KN,V> withKeyDeserializer(com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<KN>> keyDeserializer) Provide custom deserializers for keys. Deserializer is configured automatically.- Type Parameters:
KN
- type of keys- Parameters:
keyDeserializer
- serializer for keys- Returns:
ReaderBuilder
with custom key deserializer
-
withKeyDeserializer
public <KN> ReaderBuilder<KN,V> withKeyDeserializer(org.apache.kafka.common.serialization.Deserializer<KN> keyDeserializer) Provide custom deserializers for keys. Deserializer is configured automatically.- Type Parameters:
KN
- type of keys- Parameters:
keyDeserializer
- serializer for keys- Returns:
ReaderBuilder
with custom key deserializer- See Also:
-
withValueDeserializer
public <VN> ReaderBuilder<K,VN> withValueDeserializer(com.bakdata.kafka.Preconfigured<org.apache.kafka.common.serialization.Deserializer<VN>> valueDeserializer) Provide custom deserializers for values. Deserializer is configured automatically.- Type Parameters:
VN
- type of values- Parameters:
valueDeserializer
- serializer for values- Returns:
ReaderBuilder
with custom values deserializer
-
withValueDeserializer
public <VN> ReaderBuilder<K,VN> withValueDeserializer(org.apache.kafka.common.serialization.Deserializer<VN> valueDeserializer) Provide custom deserializers for values. Deserializer is configured automatically.- Type Parameters:
VN
- type of values- Parameters:
valueDeserializer
- serializer for values- Returns:
ReaderBuilder
with custom values deserializer- See Also:
-