Package io.debezium.server.pulsar
Class PulsarChangeConsumer
java.lang.Object
io.debezium.server.BaseChangeConsumer
io.debezium.server.pulsar.PulsarChangeConsumer
- All Implemented Interfaces:
io.debezium.engine.DebeziumEngine.ChangeConsumer<io.debezium.engine.ChangeEvent<Object,Object>>
@Named("pulsar")
@Dependent
public class PulsarChangeConsumer
extends BaseChangeConsumer
implements io.debezium.engine.DebeziumEngine.ChangeConsumer<io.debezium.engine.ChangeEvent<Object,Object>>
Implementation of the consumer that delivers the messages into a Pulsar destination.
- Author:
- Jiri Pechanec, Henrik Schnell
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.slf4j.Logger(package private) Stringprivate static final Stringprivate static final Stringprivate static final Stringprivate org.apache.pulsar.client.api.PulsarClient(package private) String(package private) String(package private) IntegerFields inherited from class io.debezium.server.BaseChangeConsumer
streamNameMapper -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) voidclose()(package private) voidconnect()private org.apache.pulsar.client.api.Producer<?>createProducer(String topicName, Object value) voidhandleBatch(List<io.debezium.engine.ChangeEvent<Object, Object>> records, io.debezium.engine.DebeziumEngine.RecordCommitter<io.debezium.engine.ChangeEvent<Object, Object>> committer) Methods inherited from class io.debezium.server.BaseChangeConsumer
convertHeaders, getBytes, getConfigSubset, getString, unsupportedTypeMessageMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.debezium.engine.DebeziumEngine.ChangeConsumer
supportsTombstoneEvents
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
PROP_PREFIX
- See Also:
-
PROP_CLIENT_PREFIX
- See Also:
-
PROP_PRODUCER_PREFIX
- See Also:
-
producers
-
pulsarClient
private org.apache.pulsar.client.api.PulsarClient pulsarClient -
producerConfig
-
nullKey
String nullKey -
pulsarTenant
String pulsarTenant -
pulsarNamespace
String pulsarNamespace -
timeout
Integer timeout
-
-
Constructor Details
-
PulsarChangeConsumer
public PulsarChangeConsumer()
-
-
Method Details
-
connect
@PostConstruct void connect() -
close
@PreDestroy void close() -
createProducer
-
handleBatch
public void handleBatch(List<io.debezium.engine.ChangeEvent<Object, Object>> records, io.debezium.engine.DebeziumEngine.RecordCommitter<io.debezium.engine.ChangeEvent<Object, throws InterruptedExceptionObject>> committer) - Specified by:
handleBatchin interfaceio.debezium.engine.DebeziumEngine.ChangeConsumer<io.debezium.engine.ChangeEvent<Object,Object>> - Throws:
InterruptedException
-