@Component @Profile(value="!test") public class KafkaTopicRepository extends java.lang.Object implements TopicRepository
| Constructor and Description |
|---|
KafkaTopicRepository(ZooKeeperHolder zkFactory,
KafkaFactory kafkaFactory,
KafkaRepositorySettings settings,
KafkaPartitionsCalculator partitionsCalculator) |
| Modifier and Type | Method and Description |
|---|---|
int |
compareOffsets(java.lang.String firstOffset,
java.lang.String secondOffset) |
EventConsumer |
createEventConsumer(java.lang.String topic,
java.util.List<Cursor> cursors) |
org.apache.kafka.clients.consumer.Consumer<java.lang.String,java.lang.String> |
createKafkaConsumer() |
void |
createTopic(EventType eventType) |
void |
deleteTopic(java.lang.String topic) |
TopicPartition |
getPartition(java.lang.String topicId,
java.lang.String partition) |
java.util.List<java.lang.String> |
listPartitionNames(java.lang.String topicId) |
java.util.List<TopicPartition> |
listPartitions(java.lang.String topicId) |
java.util.List<Topic> |
listTopics() |
java.util.Map<java.lang.String,java.lang.Long> |
materializePositions(java.lang.String topicId,
SubscriptionBase.InitialPosition position) |
boolean |
partitionExists(java.lang.String topic,
java.lang.String partition) |
void |
syncPostBatch(java.lang.String topicId,
java.util.List<BatchItem> batch) |
boolean |
topicExists(java.lang.String topic) |
void |
validateCommitCursors(java.lang.String topic,
java.util.List<Cursor> cursors) |
@Autowired public KafkaTopicRepository(ZooKeeperHolder zkFactory, KafkaFactory kafkaFactory, KafkaRepositorySettings settings, KafkaPartitionsCalculator partitionsCalculator)
public java.util.List<Topic> listTopics() throws ServiceUnavailableException
listTopics in interface TopicRepositoryServiceUnavailableExceptionpublic void createTopic(EventType eventType) throws TopicCreationException, DuplicatedEventTypeNameException
createTopic in interface TopicRepositoryTopicCreationExceptionDuplicatedEventTypeNameExceptionpublic void deleteTopic(java.lang.String topic)
throws TopicDeletionException
deleteTopic in interface TopicRepositoryTopicDeletionExceptionpublic boolean topicExists(java.lang.String topic)
throws ServiceUnavailableException
topicExists in interface TopicRepositoryServiceUnavailableExceptionpublic boolean partitionExists(java.lang.String topic,
java.lang.String partition)
throws NakadiException
partitionExists in interface TopicRepositoryNakadiExceptionpublic void syncPostBatch(java.lang.String topicId,
java.util.List<BatchItem> batch)
throws EventPublishingException
syncPostBatch in interface TopicRepositoryEventPublishingExceptionpublic java.util.List<TopicPartition> listPartitions(java.lang.String topicId) throws ServiceUnavailableException
listPartitions in interface TopicRepositoryServiceUnavailableExceptionpublic java.util.Map<java.lang.String,java.lang.Long> materializePositions(java.lang.String topicId,
SubscriptionBase.InitialPosition position)
throws ServiceUnavailableException
materializePositions in interface TopicRepositoryServiceUnavailableExceptionpublic java.util.List<java.lang.String> listPartitionNames(java.lang.String topicId)
listPartitionNames in interface TopicRepositorypublic TopicPartition getPartition(java.lang.String topicId, java.lang.String partition) throws ServiceUnavailableException
getPartition in interface TopicRepositoryServiceUnavailableExceptionpublic org.apache.kafka.clients.consumer.Consumer<java.lang.String,java.lang.String> createKafkaConsumer()
public EventConsumer createEventConsumer(java.lang.String topic, java.util.List<Cursor> cursors) throws ServiceUnavailableException, InvalidCursorException
createEventConsumer in interface TopicRepositoryServiceUnavailableExceptionInvalidCursorExceptionpublic int compareOffsets(java.lang.String firstOffset,
java.lang.String secondOffset)
compareOffsets in interface TopicRepositorypublic void validateCommitCursors(java.lang.String topic,
java.util.List<Cursor> cursors)
throws InvalidCursorException
validateCommitCursors in interface TopicRepositoryInvalidCursorException