in src/main/java/com/epam/eco/commons/kafka/helpers/GroupOffsetResetter.java [111:129]
private void resetToEarliestLatest(String groupName, TopicPartition[] partitions, boolean earliestLatest) {
Validate.notNull(groupName, "Group name is null");
Validate.notEmpty(partitions, "Collection of partitions is null or empty");
Validate.noNullElements(partitions, "Collection of partitions contains null elements");
Map<String, Object> consumerConfig =
ConsumerConfigBuilder.with(this.consumerConfig).groupId(groupName).build();
try (KafkaConsumer<?, ?> consumer = new KafkaConsumer<>(consumerConfig)) {
Map<TopicPartition, Long> offsets = new HashMap<>();
for (TopicPartition partition : partitions) {
if (earliestLatest) {
offsets.put(partition, 0L);
} else {
offsets.put(partition, Long.MAX_VALUE);
}
}
doReset(consumer, offsets);
}
}