Package io.debezium.server.pubsub
Class PubSubChangeConsumer
- java.lang.Object
-
- io.debezium.server.BaseChangeConsumer
-
- io.debezium.server.pubsub.PubSubChangeConsumer
-
- All Implemented Interfaces:
DebeziumEngine.ChangeConsumer<ChangeEvent<Object,Object>>
@Named("pubsub") @Dependent public class PubSubChangeConsumer extends BaseChangeConsumer implements DebeziumEngine.ChangeConsumer<ChangeEvent<Object,Object>>Implementation of the consumer that delivers the messages into Google Pub/Sub destination.- Author:
- Jiri Pechanec
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfacePubSubChangeConsumer.PublisherBuilder
-
Field Summary
Fields Modifier and Type Field Description (package private) javax.enterprise.inject.Instance<PubSubChangeConsumer.PublisherBuilder>customPublisherBuilder(package private) booleanflowControlEnabled(package private) IntegerinitialRetryDelay(package private) IntegerinitialRpcTimeoutprivate static org.slf4j.LoggerLOGGER(package private) LongmaxBufferBytes(package private) LongmaxBufferSize(package private) IntegermaxDelayThresholdMs(package private) LongmaxOutstandingMessages(package private) LongmaxOutstandingRequestBytes(package private) IntegermaxRequestTimeoutMs(package private) LongmaxRetryDelay(package private) IntegermaxTotalTimeoutMs(package private) StringnullKey(package private) booleanorderingEnabledprivate StringprojectIdprivate static StringPROP_PREFIXprivate static StringPROP_PROJECT_IDprivate PubSubChangeConsumer.PublisherBuilderpublisherBuilderprivate Map<String,com.google.cloud.pubsub.v1.Publisher>publishers(package private) DoubleretryDelayMultiplier(package private) DoublerpcTimeoutMultiplier-
Fields inherited from class io.debezium.server.BaseChangeConsumer
streamNameMapper
-
-
Constructor Summary
Constructors Constructor Description PubSubChangeConsumer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidclose()(package private) voidconnect()voidhandleBatch(List<ChangeEvent<Object,Object>> records, DebeziumEngine.RecordCommitter<ChangeEvent<Object,Object>> committer)booleansupportsTombstoneEvents()-
Methods inherited from class io.debezium.server.BaseChangeConsumer
getBytes, getConfigSubset, getString, unsupportedTypeMessage
-
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
PROP_PREFIX
private static final String PROP_PREFIX
- See Also:
- Constant Field Values
-
PROP_PROJECT_ID
private static final String PROP_PROJECT_ID
- See Also:
- Constant Field Values
-
projectId
private String projectId
-
publisherBuilder
private PubSubChangeConsumer.PublisherBuilder publisherBuilder
-
orderingEnabled
boolean orderingEnabled
-
nullKey
String nullKey
-
maxDelayThresholdMs
Integer maxDelayThresholdMs
-
maxBufferSize
Long maxBufferSize
-
maxBufferBytes
Long maxBufferBytes
-
flowControlEnabled
boolean flowControlEnabled
-
maxOutstandingMessages
Long maxOutstandingMessages
-
maxOutstandingRequestBytes
Long maxOutstandingRequestBytes
-
maxTotalTimeoutMs
Integer maxTotalTimeoutMs
-
maxRequestTimeoutMs
Integer maxRequestTimeoutMs
-
initialRetryDelay
Integer initialRetryDelay
-
retryDelayMultiplier
Double retryDelayMultiplier
-
maxRetryDelay
Long maxRetryDelay
-
initialRpcTimeout
Integer initialRpcTimeout
-
rpcTimeoutMultiplier
Double rpcTimeoutMultiplier
-
customPublisherBuilder
@Inject @CustomConsumerBuilder javax.enterprise.inject.Instance<PubSubChangeConsumer.PublisherBuilder> customPublisherBuilder
-
-
Method Detail
-
connect
@PostConstruct void connect()
-
close
@PreDestroy void close()
-
handleBatch
public void handleBatch(List<ChangeEvent<Object,Object>> records, DebeziumEngine.RecordCommitter<ChangeEvent<Object,Object>> committer) throws InterruptedException
- Specified by:
handleBatchin interfaceDebeziumEngine.ChangeConsumer<ChangeEvent<Object,Object>>- Throws:
InterruptedException
-
supportsTombstoneEvents
public boolean supportsTombstoneEvents()
- Specified by:
supportsTombstoneEventsin interfaceDebeziumEngine.ChangeConsumer<ChangeEvent<Object,Object>>
-
-