Interface SourceTaskContext
-
Method Summary
Modifier and TypeMethodDescriptionconfigs()
Get the Task configuration.Get the OffsetStorageReader for this SourceTask.Get aPluginMetrics
that can be used to define metricsdefault 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
NoSuchMethodError
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
-
pluginMetrics
PluginMetrics pluginMetrics()Get aPluginMetrics
that can be used to define metricsThis method was added in Apache Kafka 4.1. 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
NoSuchMethodError
orNoClassDefFoundError
when the connector is deployed to Connect runtimes older than Kafka 4.1. For example:PluginMetrics pluginMetrics; try { pluginMetrics = context.pluginMetrics(); } catch (NoSuchMethodError | NoClassDefFoundError e) { pluginMetrics = null; }
- Returns:
- the pluginMetrics instance
- Since:
- 4.1
-