class SnowdropKafkaProducer implements KafkaProducer<K, V> {

    @Override
    public Flux<PartitionInfo> partitionsFor(String topic) {
        if (StringUtils.isEmpty(topic)) {
            throw new IllegalArgumentException("Topic cannot be empty");
        }

        return delegate.partitionsFor(topic)
            .convert()
            .with(UniReactorConverters.toMono())
            .flatMapMany(Flux::fromIterable)
            .map(SnowdropPartitionInfo::new);
    }

      SnowdropKafkaProducer(io.vertx.mutiny.kafka.client.producer.KafkaProducer<K, V> delegate);

}