Package org.apache.kafka.connect.source
Interface SourceTaskContext
public interface SourceTaskContext
SourceTaskContext is provided to SourceTasks to allow them to interact with the underlying
runtime.
-
Method Summary
Modifier and TypeMethodDescriptionconfigs()
Get the Task configuration.Get the OffsetStorageReader for this SourceTask.default TransactionContext
Get aTransactionContext
that can be used to define producer transaction boundaries when exactly-once support is enabled for the connector.
-
Method Details
-
configs
Get the Task configuration. This is the latest configuration and may differ from that passed on startup.For example, this method can be used to obtain the latest configuration if an external secret has changed, and the configuration is using variable references such as those compatible with
ConfigTransformer
. -
offsetStorageReader
OffsetStorageReader offsetStorageReader()Get the OffsetStorageReader for this SourceTask. -
transactionContext
Get aTransactionContext
that can be used to define producer transaction boundaries when exactly-once support is enabled for the connector.This method was added in Apache Kafka 3.2. Source tasks that use this method but want to maintain backward compatibility so they can also be deployed to older Connect runtimes should guard the call to this method with a try-catch block, since calling this method will result in a
NoSuchMethodException
orNoClassDefFoundError
when the source connector is deployed to Connect runtimes older than Kafka 3.2. For example:TransactionContext transactionContext; try { transactionContext = context.transactionContext(); } catch (NoSuchMethodError | NoClassDefFoundError e) { transactionContext = null; }
- Returns:
- the transaction context, or null if the connector was not configured to specify transaction boundaries
- Since:
- 3.3
-