Package io.debezium.connector.mongodb
Class MongoDbConnectorTask
- java.lang.Object
-
- org.apache.kafka.connect.source.SourceTask
-
- io.debezium.connector.common.BaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-
- io.debezium.connector.mongodb.MongoDbConnectorTask
-
- All Implemented Interfaces:
org.apache.kafka.connect.connector.Task
@ThreadSafe public final class MongoDbConnectorTask extends BaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
A Kafka Connect source task that replicates the changes from one or more MongoDB replica sets.Generally, the
MongoDbConnectorassigns each replica set to a separate task, although multiple replica sets will be assigned to each task when the maximum number of tasks is limited. Regardless, every task will use a separate thread to replicate the contents of each replica set, and each replication thread may use multiple threads to perform an initial sync of the replica set.- Author:
- Randall Hauch
- See Also:
MongoDbConnector,MongoDbConnectorConfig
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.debezium.connector.common.BaseSourceTask
BaseSourceTask.State
-
-
Field Summary
Fields Modifier and Type Field Description private static StringCONTEXT_NAMEprivate ErrorHandlererrorHandlerprivate org.slf4j.Loggerloggerprivate ChangeEventQueue<DataChangeEvent>queueprivate MongoDbSchemaschemaprivate MongoDbTaskContexttaskContextprivate StringtaskName
-
Constructor Summary
Constructors Constructor Description MongoDbConnectorTask()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<org.apache.kafka.connect.source.SourceRecord>doPoll()voiddoStop()protected Iterable<Field>getAllConfigurationFields()private MongoDbOffsetContextgetPreviousOffset(MongoDbConnectorConfig connectorConfig, ReplicaSets replicaSets)private ReplicaSetsgetReplicaSets(Configuration config)ChangeEventSourceCoordinator<MongoDbPartition,MongoDbOffsetContext>start(Configuration config)Stringversion()-
Methods inherited from class io.debezium.connector.common.BaseSourceTask
commit, commitRecord, getPreviousOffsets, poll, start, stop
-
-
-
-
Field Detail
-
CONTEXT_NAME
private static final String CONTEXT_NAME
- See Also:
- Constant Field Values
-
logger
private final org.slf4j.Logger logger
-
queue
private volatile ChangeEventQueue<DataChangeEvent> queue
-
taskName
private volatile String taskName
-
taskContext
private volatile MongoDbTaskContext taskContext
-
errorHandler
private volatile ErrorHandler errorHandler
-
schema
private volatile MongoDbSchema schema
-
-
Method Detail
-
version
public String version()
-
start
public ChangeEventSourceCoordinator<MongoDbPartition,MongoDbOffsetContext> start(Configuration config)
- Specified by:
startin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-
doPoll
public List<org.apache.kafka.connect.source.SourceRecord> doPoll() throws InterruptedException
- Specified by:
doPollin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>- Throws:
InterruptedException
-
doStop
public void doStop()
- Specified by:
doStopin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-
getAllConfigurationFields
protected Iterable<Field> getAllConfigurationFields()
- Specified by:
getAllConfigurationFieldsin classBaseSourceTask<MongoDbPartition,MongoDbOffsetContext>
-
getPreviousOffset
private MongoDbOffsetContext getPreviousOffset(MongoDbConnectorConfig connectorConfig, ReplicaSets replicaSets)
-
getReplicaSets
private ReplicaSets getReplicaSets(Configuration config)
-
-