class KafkaTopicClientImpl implements KafkaTopicClient {

  @Override
  public Map<String, TopicDescription> describeTopics(final Collection<String> topicNames) {
    try {
      return executeWithRetries(() -> adminClient.describeTopics(topicNames).all());
    } catch (final Exception e) {
      throw new KafkaResponseGetFailedException("Failed to Describe Kafka Topics " + topicNames, e);
    }
  }

  public  KafkaTopicClientImpl(final AdminClient adminClient);

}