Class NatsJetStreamChangeConsumer
java.lang.Object
io.debezium.server.BaseChangeConsumer
io.debezium.server.nats.jetstream.NatsJetStreamChangeConsumer
- All Implemented Interfaces:
io.debezium.engine.DebeziumEngine.ChangeConsumer<io.debezium.engine.ChangeEvent<Object,Object>>
@Named("nats-jetstream")
@Dependent
public class NatsJetStreamChangeConsumer
extends BaseChangeConsumer
implements io.debezium.engine.DebeziumEngine.ChangeConsumer<io.debezium.engine.ChangeEvent<Object,Object>>
Implementation of the consumer that delivers the messages into a NATS Jetstream stream.
- Author:
- Balázs Sipos
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) boolean(package private) jakarta.enterprise.inject.Instance<io.nats.client.JetStream>private io.nats.client.JetStreamprivate static final org.slf4j.Loggerprivate io.nats.client.Connectionprivate static final Stringprivate static final Stringprivate static final Stringprivate static final Stringprivate static final StringFields inherited from class io.debezium.server.BaseChangeConsumer
streamNameMapper -
Constructor Summary
Constructors -
Method Summary
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_URL
- See Also:
-
PROP_CREATE_STREAM
- See Also:
-
PROP_SUBJECTS
- See Also:
-
PROP_STORAGE
- See Also:
-
nc
private io.nats.client.Connection nc -
js
private io.nats.client.JetStream js -
createStream
boolean createStream -
customStreamingConnection
@Inject @CustomConsumerBuilder jakarta.enterprise.inject.Instance<io.nats.client.JetStream> customStreamingConnection
-
-
Constructor Details
-
NatsJetStreamChangeConsumer
public NatsJetStreamChangeConsumer()
-
-
Method Details
-
connect
@PostConstruct void connect() -
close
@PreDestroy void close() -
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
-