use of org.apache.kafka.clients.consumer.PulsarKafkaConsumer in project incubator-pulsar by apache.
the class KafkaConsumerTest method testSimpleConsumer.
@Test
public void testSimpleConsumer() throws Exception {
String topic = "persistent://sample/standalone/ns/testSimpleConsumer";
Properties props = new Properties();
props.put("bootstrap.servers", lookupUrl.toString());
props.put("group.id", "my-subscription-name");
props.put("enable.auto.commit", "false");
props.put("key.deserializer", StringDeserializer.class.getName());
props.put("value.deserializer", StringDeserializer.class.getName());
Consumer<String, String> consumer = new PulsarKafkaConsumer<>(props);
consumer.subscribe(Arrays.asList(topic));
Producer<byte[]> pulsarProducer = pulsarClient.newProducer().topic(topic).create();
for (int i = 0; i < 10; i++) {
Message<byte[]> msg = MessageBuilder.create().setKey(Integer.toString(i)).setContent(("hello-" + i).getBytes()).build();
pulsarProducer.send(msg);
}
AtomicInteger received = new AtomicInteger();
while (received.get() < 10) {
ConsumerRecords<String, String> records = consumer.poll(100);
records.forEach(record -> {
assertEquals(record.key(), Integer.toString(received.get()));
assertEquals(record.value(), "hello-" + received.get());
received.incrementAndGet();
});
consumer.commitSync();
}
consumer.close();
}
Aggregations