Class SpannerEventDispatcher
java.lang.Object
io.debezium.pipeline.EventDispatcher<SpannerPartition,TableId>
io.debezium.connector.spanner.processor.SpannerEventDispatcher
- All Implemented Interfaces:
AutoCloseable
public class SpannerEventDispatcher
extends io.debezium.pipeline.EventDispatcher<SpannerPartition,TableId>
Spanner dispatcher for data change and schema change events.
-
Nested Class Summary
Nested classes/interfaces inherited from class io.debezium.pipeline.EventDispatcher
io.debezium.pipeline.EventDispatcher.InconsistentSchemaHandler<P extends io.debezium.pipeline.spi.Partition,T extends io.debezium.spi.schema.DataCollectionId>, io.debezium.pipeline.EventDispatcher.SnapshotReceiver<P extends io.debezium.pipeline.spi.Partition> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final SpannerConnectorConfigprivate final KafkaPartitionInfoProviderprivate static final org.slf4j.Loggerprivate final io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent>private final io.debezium.schema.DatabaseSchema<TableId>private final SchemaRegistryprivate final SourceInfoFactoryprivate final io.debezium.spi.topic.TopicNamingStrategy<TableId> -
Constructor Summary
ConstructorsConstructorDescriptionSpannerEventDispatcher(SpannerConnectorConfig connectorConfig, io.debezium.spi.topic.TopicNamingStrategy<TableId> topicNamingStrategy, io.debezium.schema.DatabaseSchema<TableId> schema, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.schema.DataCollectionFilters.DataCollectionFilter<TableId> filter, io.debezium.pipeline.spi.ChangeEventCreator changeEventCreator, io.debezium.pipeline.source.spi.EventMetadataProvider metadataProvider, io.debezium.heartbeat.HeartbeatFactory<TableId> heartbeatFactory, io.debezium.schema.SchemaNameAdjuster schemaNameAdjuster, SchemaRegistry schemaRegistry, SourceInfoFactory sourceInfoFactory, KafkaPartitionInfoProvider kafkaPartitionInfoProvider) -
Method Summary
Modifier and TypeMethodDescription(package private) org.apache.kafka.connect.data.StructbuildMessage(io.debezium.data.Envelope envelope, org.apache.kafka.connect.data.Struct sourceStruct) voidclose()voiddestroy()(package private) org.apache.kafka.connect.source.SourceRecordemitSourceRecord(String topicName, io.debezium.schema.DataCollectionSchema dataCollectionSchema, int partition, org.apache.kafka.connect.data.Struct sourceStruct) booleanMethods inherited from class io.debezium.pipeline.EventDispatcher
alwaysDispatchHeartbeatEvent, dispatchConnectorEvent, dispatchDataChangeEvent, dispatchFilteredEvent, dispatchHeartbeatEvent, dispatchSchemaChangeEvent, dispatchSchemaChangeEvent, dispatchServerHeartbeatEvent, dispatchSnapshotEvent, dispatchTransactionCommittedEvent, dispatchTransactionStartedEvent, dispatchTransactionStartedEvent, doPostProcessing, enqueueNotification, errorOnMissingSchema, getHistorizedSchema, getIncrementalSnapshotChangeEventReceiver, getIncrementalSnapshotChangeEventSource, getSchema, getSnapshotChangeEventReceiver, heartbeatsEnabled, ignoreMissingSchema, setEventListener, setIncrementalSnapshotChangeEventSource
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
connectorConfig
-
queue
private final io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue -
topicNamingStrategy
-
schemaRegistry
-
schema
-
sourceInfoFactory
-
kafkaPartitionInfoProvider
-
-
Constructor Details
-
SpannerEventDispatcher
public SpannerEventDispatcher(SpannerConnectorConfig connectorConfig, io.debezium.spi.topic.TopicNamingStrategy<TableId> topicNamingStrategy, io.debezium.schema.DatabaseSchema<TableId> schema, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.schema.DataCollectionFilters.DataCollectionFilter<TableId> filter, io.debezium.pipeline.spi.ChangeEventCreator changeEventCreator, io.debezium.pipeline.source.spi.EventMetadataProvider metadataProvider, io.debezium.heartbeat.HeartbeatFactory<TableId> heartbeatFactory, io.debezium.schema.SchemaNameAdjuster schemaNameAdjuster, SchemaRegistry schemaRegistry, SourceInfoFactory sourceInfoFactory, KafkaPartitionInfoProvider kafkaPartitionInfoProvider)
-
-
Method Details
-
publishLowWatermarkStampEvent
public boolean publishLowWatermarkStampEvent() -
emitSourceRecord
org.apache.kafka.connect.source.SourceRecord emitSourceRecord(String topicName, io.debezium.schema.DataCollectionSchema dataCollectionSchema, int partition, org.apache.kafka.connect.data.Struct sourceStruct) -
buildMessage
org.apache.kafka.connect.data.Struct buildMessage(io.debezium.data.Envelope envelope, org.apache.kafka.connect.data.Struct sourceStruct) -
destroy
public void destroy() -
close
public void close()- Specified by:
closein interfaceAutoCloseable- Overrides:
closein classio.debezium.pipeline.EventDispatcher<SpannerPartition,TableId>
-