Class NatsJetStreamChangeConsumer
java.lang.Object
io.debezium.server.BaseChangeConsumer
io.debezium.server.nats.jetstream.NatsJetStreamChangeConsumer
- All Implemented Interfaces:
DebeziumEngine.ChangeConsumer<ChangeEvent<Object,Object>>
@Named("nats-jetstream")
@Dependent
public class NatsJetStreamChangeConsumer
extends BaseChangeConsumer
implements DebeziumEngine.ChangeConsumer<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) javax.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
Modifier and TypeMethodDescription(package private) voidclose()(package private) voidconnect()voidhandleBatch(List<ChangeEvent<Object, Object>> records, DebeziumEngine.RecordCommitter<ChangeEvent<Object, Object>> committer) Methods inherited from class io.debezium.server.BaseChangeConsumer
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 javax.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<ChangeEvent<Object, Object>> records, DebeziumEngine.RecordCommitter<ChangeEvent<Object, throws InterruptedExceptionObject>> committer) - Specified by:
handleBatchin interfaceDebeziumEngine.ChangeConsumer<ChangeEvent<Object,Object>> - Throws:
InterruptedException
-