Table of Contents

Class KNetSourceTask<TTask>

Namespace
MASES.KNet.Connect
Assembly
MASES.KNet.dll

An implementation of KNetTask<TTask> for source task

public abstract class KNetSourceTask<TTask> : KNetTask<TTask>, IKNetSourceTask, IKNetTask, ITask, IKNetCommon, IKNetConnectLogging where TTask : KNetSourceTask<TTask>

Type Parameters

TTask

The class which extends KNetSourceTask<TTask>

Inheritance
KNetTask<TTask>
KNetSourceTask<TTask>
Implements
Derived
Inherited Members

Properties

Context

public SourceTaskContext Context { get; }

Property Value

SourceTaskContext

ReflectedTaskClassName

Set the ReflectedTaskClassName of the connector to a fixed value

protected override string ReflectedTaskClassName { get; }

Property Value

string

UseOnlyAsync

Implement the method to declare if out-of-sync feature will be used: it will be set once within KNetSourceTask<TTask> invocation of Start(IReadOnlyDictionary<string, string>)

public virtual bool UseOnlyAsync { get; }

Property Value

bool

Returning true will use the out-of-sync feature, otherwise returning false the feature is disabled which is the default behavior.

Remarks

Be aware that returning true from this method will be mutually exclusive between the usage of PushRecordAsync(SourceRecord) and invocation of Poll()

Methods

CreateAndPushRecordAsync<TValue>(string, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TValue>(string topic, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TValue>(string, int?, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TValue>(string topic, int? partition, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TKey, TValue>(string, Schema, TKey, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKey, TValue>(string topic, Schema keySchema, TKey key, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TKey, TValue>(string, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKey, TValue>(string topic, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, DateTime, Headers, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Headers headers, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

headers Headers

The Headerss; may be null or empty

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TKey, TValue>(string, int?, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKey, TValue>(string topic, int? partition, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecordAsync<TKeySource, TOffset, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TValue, DateTime)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecordAsync<TKeySource, TOffset, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TValue, DateTime)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TKey, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema keySchema, TKey key, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue, DateTime)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue, DateTime, Headers)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Headers headers)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

headers Headers

The Headerss; may be null or empty

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM in async mode using PushRecordAsync(SourceRecord), i.e. without waiting the invocation of Poll to return back the list of SourceRecord

public void CreateAndPushRecordAsync<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TValue>(string, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TValue>(string topic, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TValue>(string, int?, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TValue>(string topic, int? partition, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TKey, TValue>(string, Schema, TKey, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKey, TValue>(string topic, Schema keySchema, TKey key, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TKey, TValue>(string, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKey, TValue>(string topic, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, DateTime, Headers, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Headers headers, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

headers Headers

The Headerss; may be null or empty

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TKey, TValue>(string, int?, Schema, TValue, Map<String, object>, Map<String, object>)

Creates a new SourceRecord<TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKey, TValue>(string topic, int? partition, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateAndPushRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TValue, DateTime)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TValue, DateTime)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TKey, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema keySchema, TKey key, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue, DateTime)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue, DateTime, Headers)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Headers headers)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

headers Headers

The Headerss; may be null or empty

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TValue)

Creates a new SourceRecord<TKeySource, TOffset, TKey, TValue> and push it to JVM

public void CreateAndPushRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TValue>(string, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

public SourceRecord<object, TValue> CreateRecord<TValue>(string topic, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<object, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TValue>(string, int?, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

public SourceRecord<object, TValue> CreateRecord<TValue>(string topic, int? partition, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<object, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TKey, TValue>(string, Schema, TKey, Schema, TValue, Map<String, object>, Map<String, object>)

public SourceRecord<TKey, TValue> CreateRecord<TKey, TValue>(string topic, Schema keySchema, TKey key, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<TKey, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TKey, TValue>(string, Schema, TValue, Map<String, object>, Map<String, object>)

public SourceRecord<TKey, TValue> CreateRecord<TKey, TValue>(string topic, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<TKey, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, Map<String, object>, Map<String, object>)

public SourceRecord<TKey, TValue> CreateRecord<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<TKey, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, DateTime, Map<String, object>, Map<String, object>)

public SourceRecord<TKey, TValue> CreateRecord<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<TKey, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TKey, TValue>(string, int?, Schema, TKey, Schema, TValue, DateTime, Headers, Map<String, object>, Map<String, object>)

public SourceRecord<TKey, TValue> CreateRecord<TKey, TValue>(string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Headers headers, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

headers Headers

The Headerss; may be null or empty

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<TKey, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TKey, TValue>(string, int?, Schema, TValue, Map<String, object>, Map<String, object>)

public SourceRecord<TKey, TValue> CreateRecord<TKey, TValue>(string topic, int? partition, Schema valueSchema, TValue value, Map<String, object> sourcePartition = null, Map<String, object> sourceOffset = null)

Parameters

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

sourcePartition Map<String, object>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, object>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

Returns

SourceRecord<TKey, TValue>

A newvly allocated SourceRecord<TKey, TValue>

Type Parameters

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values).

CreateRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TValue, DateTime)

public SourceRecord<TKeySource, TOffset, object, TValue> CreateRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Returns

SourceRecord<TKeySource, TOffset, object, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TValue, DateTime)

public SourceRecord<TKeySource, TOffset, object, TValue> CreateRecord<TKeySource, TOffset, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Returns

SourceRecord<TKeySource, TOffset, object, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TKey, Schema, TValue)

public SourceRecord<TKeySource, TOffset, TKey, TValue> CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema keySchema, TKey key, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Returns

SourceRecord<TKeySource, TOffset, TKey, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, Schema, TValue)

public SourceRecord<TKeySource, TOffset, TKey, TValue> CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Returns

SourceRecord<TKeySource, TOffset, TKey, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue)

public SourceRecord<TKeySource, TOffset, TKey, TValue> CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Returns

SourceRecord<TKeySource, TOffset, TKey, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue, DateTime)

public SourceRecord<TKeySource, TOffset, TKey, TValue> CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

Returns

SourceRecord<TKeySource, TOffset, TKey, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TKey, Schema, TValue, DateTime, Headers)

public SourceRecord<TKeySource, TOffset, TKey, TValue> CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema keySchema, TKey key, Schema valueSchema, TValue value, DateTime timestamp, Headers headers)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

keySchema Schema

The schema for the key; may be null

key TKey

The key; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

timestamp DateTime

The timestamp; may be null

headers Headers

The Headerss; may be null or empty

Returns

SourceRecord<TKeySource, TOffset, TKey, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type within Map<K, V> of sourcePartition

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource>, Map<String, TOffset>, string, int?, Schema, TValue)

public SourceRecord<TKeySource, TOffset, TKey, TValue> CreateRecord<TKeySource, TOffset, TKey, TValue>(Map<String, TKeySource> sourcePartition, Map<String, TOffset> sourceOffset, string topic, int? partition, Schema valueSchema, TValue value)

Parameters

sourcePartition Map<String, TKeySource>

The parameter represents a single input sourcePartition that the record came from (e.g. a filename, table name, or topic-partition).

sourceOffset Map<String, TOffset>

The parameter represents a position in that sourcePartition which can be used to resume consumption of data.

topic string

The name of the topic; may be null

partition int?

The partition number for the Kafka topic; may be null

valueSchema Schema

The schema for the value; may be null

value TValue

The value; may be null

Returns

SourceRecord<TKeySource, TOffset, TKey, TValue>

A newvly allocated SourceRecord<TKeySource, TOffset, TKey, TValue>

Type Parameters

TKeySource

The type within Map<K, V> of sourcePartition

TOffset

The type within Map<K, V> of sourceOffset

TKey

The type of the key to be inserted in Kafka

TValue

The type of value to be inserted in Kafka

Remarks

These values can have arbitrary structure and should be represented using Org.Apache.Kafka.Connect.Data.* objects (or primitive values). For example, a database connector might specify the sourcePartition as a record containing { "db": "database_name", "table": "table_name"} and the sourceOffset as a long containing the timestamp of the row.

OffsetAt<TKeySource, TOffset>(string, TKeySource)

Get the offset for the specified partition. If the data isn't already available locally, this gets it from the backing store, which may require some network round trips.

protected Map<String, TOffset> OffsetAt<TKeySource, TOffset>(string keyName, TKeySource keyValue)

Parameters

keyName string

The identifier used when was called PartitionOrOffsetForKey<T>(string, T) or PartitionOrOffsetForKeys<T>(params Tuple<string, T>[])

keyValue TKeySource

The value used when was called PartitionOrOffsetForKey<T>(string, T) or PartitionOrOffsetForKeys<T>(params Tuple<string, T>[])

Returns

Map<String, TOffset>

Return the Map<K, V> associated to the element identified from keyName and keyValue which is an object uniquely identifying the offset in the partition of data

Type Parameters

TKeySource

The type of the key set when was called PartitionOrOffsetForKey<T>(string, T), or PartitionOrOffsetForKeys<T>(params Tuple<string, T>[]), to generated the first parameter of SourceRecord

TOffset

The type of the offset set when was called PartitionOrOffsetForKey<T>(string, T), or PartitionOrOffsetForKeys<T>(params Tuple<string, T>[]), to generated the second parameter of SourceRecord

OffsetForKey<T>(String, T)

Generates a Map<K, V> to be used in SourceRecord

[Obsolete("Use PartitionOrOffsetForKey instead")]
protected Map<String, T> OffsetForKey<T>(String identifier, T value)

Parameters

identifier String

The identifier to be associated in first, or second, parameter of a SourceRecord

value T

The value to be inserted and associated to the identifier

Returns

Map<String, T>

A Map<K, V>

Type Parameters

T

The type of the value> associated to identifier

PartitionOrOffsetForKey<T>(string, T)

Generates a Map<K, V> to be used in SourceRecord

protected Map<String, T> PartitionOrOffsetForKey<T>(string identifier, T value)

Parameters

identifier string

The identifier to be associated in first, or second, parameter of a SourceRecord

value T

The value to be inserted and associated to the identifier

Returns

Map<String, T>

A Map<K, V>

Type Parameters

T

The type of the value> associated to identifier

PartitionOrOffsetForKeys<T>(params Tuple<string, T>[])

Generates a Map<K, V> to be used in SourceRecord

protected Map<String, T> PartitionOrOffsetForKeys<T>(params Tuple<string, T>[] data)

Parameters

data Tuple<string, T>[]

A set of Tuple<T1, T2> containing the identifier and its associated value to be used in first, or second, parameter of a SourceRecord

Returns

Map<String, T>

A Map<K, V>

Type Parameters

T

The type of the second element of Tuple<T1, T2> in the data

Poll()

Implement the method to execute the Poll action

public abstract IEnumerable<SourceRecord> Poll()

Returns

IEnumerable<SourceRecord>

The set of SourceRecord to return to Apache Kafka Connect framework or null if SourceRecord are accumulated using CreateAndPushRecord methods

Remarks

The method shall be implemented, however if UseOnlyAsync is set to true the JVM side never invokes Poll()

PushRecordAsync(SourceRecord)

If UseOnlyAsync is true, each record is accumulated in a list outside the scope of Poll() invocation. The method can be useful in condition where records are generated in parallel, e.g. with async methods, so it becomes less useful to wait the Poll() invocation to move the records within the JVM

public void PushRecordAsync(SourceRecord record)

Parameters

record SourceRecord

The SourceRecord to be pushed in async within the JVM queue

Remarks

When the JVM will invoke its internal poll, the invocation of PushRecordAsync(SourceRecord) can be locked waiting for the JVM to return the accumulated SourceRecord