Table of Contents

Interface IKafkaConsumer

Namespace
Silverback.Messaging.Broker
Assembly
Silverback.Integration.Kafka.dll

Consumes from one or more endpoints and pushes the received messages via the message bus.

public interface IKafkaConsumer : IConsumer
Inherited Members

Properties

Client

Gets the related IBrokerClient.

IConfluentConsumerWrapper Client { get; }

Property Value

IConfluentConsumerWrapper

Configuration

Gets the consumer configuration.

KafkaConsumerConfiguration Configuration { get; }

Property Value

KafkaConsumerConfiguration

EndpointsConfiguration

Gets the endpoints configuration.

IReadOnlyCollection<KafkaConsumerEndpointConfiguration> EndpointsConfiguration { get; }

Property Value

IReadOnlyCollection<KafkaConsumerEndpointConfiguration>

Methods

GetOffsetsForTimestamps(IEnumerable<TopicPartitionTimestamp>, TimeSpan)

Looks up the offsets for the given partitions by timestamp. The returned offset for each partition is the earliest offset for which the timestamp is greater than or equal to the given timestamp. If the provided timestamp exceeds that of the last message in the partition, a value of Confluent.Kafka.Offset.End will be returned.

IReadOnlyList<TopicPartitionOffset> GetOffsetsForTimestamps(IEnumerable<TopicPartitionTimestamp> topicPartitionTimestamps, TimeSpan timeout)

Parameters

topicPartitionTimestamps IEnumerable<TopicPartitionTimestamp>

The mapping from partition to the timestamp to look up.

timeout TimeSpan

The maximum period of time the call may block.

Returns

IReadOnlyList<TopicPartitionOffset>

A mapping from partition to the timestamp and offset of the first message with timestamp greater than or equal to the target timestamp.

Remarks

The consumer does not need to be assigned to the requested partitions.

Pause(IEnumerable<TopicPartition>)

Pauses the consumption of the specified partitions.

void Pause(IEnumerable<TopicPartition> partitions)

Parameters

partitions IEnumerable<TopicPartition>

The list of Confluent.Kafka.TopicPartition to be paused.

Resume(IEnumerable<TopicPartition>)

Resumes the consumption of the specified partitions.

void Resume(IEnumerable<TopicPartition> partitions)

Parameters

partitions IEnumerable<TopicPartition>

The list of Confluent.Kafka.TopicPartition to be paused.

Seek(TopicPartitionOffset)

Seeks the specified partition to the specified offset.

void Seek(TopicPartitionOffset topicPartitionOffset)

Parameters

topicPartitionOffset TopicPartitionOffset

The offset.