Class KNetProducer<K, V, TJVMK, TJVMV>
Extends KafkaProducer adding less intrusive methods which performs better in high throughput applications
public class KNetProducer<K, V, TJVMK, TJVMV> : KafkaProducer<TJVMK, TJVMV>, IDynamicMetaObjectProvider, IJVMBridgeCore, IEquatable<IJVMBridgeBase>, IJVMBridgeBaseStatic, IProducer<K, V, TJVMK, TJVMV>, IProducer<TJVMK, TJVMV>, IProducer, IJVMBridgeBase, IJVMBridgeDefinition, IDisposable, ICloseable, IAutoCloseable
Type Parameters
KSame meaning of KafkaProducer
VSame meaning of KafkaProducer
TJVMKThe JVM type of
KTJVMVThe JVM type of
V
- Inheritance
-
Producer<TJVMK, TJVMV>KafkaProducer<TJVMK, TJVMV>KNetProducer<K, V, TJVMK, TJVMV>
- Derived
- Inherited Members
-
JVMBridgeBase<AutoCloseable>.SExecuteWithSignature(Type, IJavaType, string, string, params object[])JVMBridgeBase<AutoCloseable>.SExecute<TReturn, TConverter>(Type, IJavaType, string, params object[])JVMBridgeBase<AutoCloseable>.SExecuteWithSignatureArray<TArrayType>(string, string, params object[])
- Extension Methods
Constructors
KNetProducer(ProducerConfigBuilder)
Initialize a new instance of KNetProducer<K, V, TJVMK, TJVMV>
public KNetProducer(ProducerConfigBuilder configBuilder)
Parameters
configBuilderProducerConfigBuilderAn instance of ProducerConfigBuilder
KNetProducer(ProducerConfigBuilder, ISerDes<K, TJVMK>, ISerDes<V, TJVMV>)
Initialize a new instance of KNetProducer<K, V, TJVMK, TJVMV>
public KNetProducer(ProducerConfigBuilder props, ISerDes<K, TJVMK> keySerializer, ISerDes<V, TJVMV> valueSerializer)
Parameters
propsProducerConfigBuilderThe properties to use, see ProducerConfigBuilder
keySerializerISerDes<K, TJVMK>Key serializer base on SerDes<T, TJVMT>
valueSerializerISerDes<V, TJVMV>Value serializer base on SerDes<T, TJVMT>
Properties
BridgeClassName
Java class name to be instantiated
public override string BridgeClassName { get; }
Property Value
Methods
Dispose(bool)
Implements the pattern described in https://learn.microsoft.com/en-en/dotnet/standard/garbage-collection/implementing-dispose
protected override void Dispose(bool disposing)
Parameters
disposingboolThe disposing parameter is a bool that indicates whether the method call comes from a Dispose() method (its value is true) or from a finalizer (its value is false)
~KNetProducer()
Finalizer
protected ~KNetProducer()
NewRecord()
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord()
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, int, DateTime, K, V)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, int partition, DateTime timestamp, K key, V value)
Parameters
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, int, DateTime, K, V, Headers)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, int partition, DateTime timestamp, K key, V value, Headers headers)
Parameters
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, int, long, K, V)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, int partition, long timestamp, K key, V value)
Parameters
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, int, long, K, V, Headers)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, int partition, long timestamp, K key, V value, Headers headers)
Parameters
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, int, K, V)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, int partition, K key, V value)
Parameters
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, int, K, V, Headers)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, int partition, K key, V value, Headers headers)
Parameters
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, K, V)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, K key, V value)
Parameters
topicstringkeyKvalueV
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
NewRecord(string, V)
Initialize a new ProducerRecord<K, V, TJVMK, TJVMV>
public ProducerRecord<K, V, TJVMK, TJVMV> NewRecord(string topic, V value)
Parameters
topicstringvalueV
Returns
- ProducerRecord<K, V, TJVMK, TJVMV>
Produce(ProducerRecord<K, V, TJVMK, TJVMV>, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Future<RecordMetadata> Produce(ProducerRecord<K, V, TJVMK, TJVMV> record, Callback cb = null)
Parameters
recordProducerRecord<K, V, TJVMK, TJVMV>cbCallback
Returns
Produce(ProducerRecord<K, V, TJVMK, TJVMV>, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void Produce(ProducerRecord<K, V, TJVMK, TJVMV> record, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
recordProducerRecord<K, V, TJVMK, TJVMV>actionAction<RecordMetadata, JVMBridgeException>
Produce(string, int, DateTime, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Future<RecordMetadata> Produce(string topic, int partition, DateTime timestamp, K key, V value, Callback cb = null)
Parameters
Returns
Produce(string, int, DateTime, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void Produce(string topic, int partition, DateTime timestamp, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringpartitioninttimestampDateTimekeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
Produce(string, int, long, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Future<RecordMetadata> Produce(string topic, int partition, long timestamp, K key, V value, Callback cb = null)
Parameters
Returns
Produce(string, int, long, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void Produce(string topic, int partition, long timestamp, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringpartitioninttimestamplongkeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
Produce(string, int, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Future<RecordMetadata> Produce(string topic, int partition, K key, V value, Callback cb = null)
Parameters
Returns
Produce(string, int, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void Produce(string topic, int partition, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringpartitionintkeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
Produce(string, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Future<RecordMetadata> Produce(string topic, K key, V value, Callback cb = null)
Parameters
Returns
Produce(string, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void Produce(string topic, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringkeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
ProduceAndWait(ProducerRecord<K, V, TJVMK, TJVMV>, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void ProduceAndWait(ProducerRecord<K, V, TJVMK, TJVMV> record, Callback cb = null)
Parameters
recordProducerRecord<K, V, TJVMK, TJVMV>cbCallback
ProduceAndWait(string, int, DateTime, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void ProduceAndWait(string topic, int partition, DateTime timestamp, K key, V value, Callback cb = null)
Parameters
ProduceAndWait(string, int, long, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void ProduceAndWait(string topic, int partition, long timestamp, K key, V value, Callback cb = null)
Parameters
ProduceAndWait(string, int, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void ProduceAndWait(string topic, int partition, K key, V value, Callback cb = null)
Parameters
ProduceAndWait(string, K, V, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public void ProduceAndWait(string topic, K key, V value, Callback cb = null)
Parameters
ProduceAsync(ProducerRecord<K, V, TJVMK, TJVMV>, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Task ProduceAsync(ProducerRecord<K, V, TJVMK, TJVMV> record, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
recordProducerRecord<K, V, TJVMK, TJVMV>actionAction<RecordMetadata, JVMBridgeException>
Returns
ProduceAsync(string, int, DateTime, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Task ProduceAsync(string topic, int partition, DateTime timestamp, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringpartitioninttimestampDateTimekeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
Returns
ProduceAsync(string, int, long, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Task ProduceAsync(string topic, int partition, long timestamp, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringpartitioninttimestamplongkeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
Returns
ProduceAsync(string, int, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Task ProduceAsync(string topic, int partition, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringpartitionintkeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
Returns
ProduceAsync(string, K, V, Action<RecordMetadata, JVMBridgeException>)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Task ProduceAsync(string topic, K key, V value, Action<RecordMetadata, JVMBridgeException> action = null)
Parameters
topicstringkeyKvalueVactionAction<RecordMetadata, JVMBridgeException>
Returns
Send(ProducerRecord<K, V, TJVMK, TJVMV>)
KNet version of Send(ProducerRecord<K, V>)
public Future<RecordMetadata> Send(ProducerRecord<K, V, TJVMK, TJVMV> record)
Parameters
recordProducerRecord<K, V, TJVMK, TJVMV>
Returns
Send(ProducerRecord<K, V, TJVMK, TJVMV>, Callback)
KNet version of Send(ProducerRecord<K, V>, Callback)
public Future<RecordMetadata> Send(ProducerRecord<K, V, TJVMK, TJVMV> record, Callback callback)
Parameters
recordProducerRecord<K, V, TJVMK, TJVMV>callbackCallback
Returns
Send(string, int, long, K, V)
KNet version of Send(ProducerRecord<K, V>)
public Future<RecordMetadata> Send(string topic, int partition, long timestamp, K key, V value)
Parameters
Returns
Remarks
Supports only TJVMK and TJVMV based on byte arrays or ByteBuffer
Send(string, int, long, K, V, Headers)
KNet version of Send(ProducerRecord<K, V>)
public Future<RecordMetadata> Send(string topic, int partition, long timestamp, K key, V value, Headers headers)
Parameters
Returns
Remarks
Supports only TJVMK and TJVMV based on byte arrays or ByteBuffer
Send(string, int, K, V)
KNet version of Send(ProducerRecord<K, V>)
public Future<RecordMetadata> Send(string topic, int partition, K key, V value)
Parameters
Returns
Remarks
Supports only TJVMK and TJVMV based on byte arrays or ByteBuffer
Send(string, int, K, V, Headers)
KNet version of Send(ProducerRecord<K, V>)
public Future<RecordMetadata> Send(string topic, int partition, K key, V value, Headers headers)
Parameters
Returns
Remarks
Supports only TJVMK and TJVMV based on byte arrays or ByteBuffer
Send(string, K, V)
KNet version of Send(ProducerRecord<K, V>)
public Future<RecordMetadata> Send(string topic, K key, V value)
Parameters
topicstringkeyKvalueV
Returns
Remarks
Supports only TJVMK and TJVMV based on byte arrays or ByteBuffer
Send(string, V)
KNet version of Send(ProducerRecord<K, V>)
public Future<RecordMetadata> Send(string topic, V value)
Parameters
topicstringvalueV
Returns
Remarks
Supports only TJVMK and TJVMV based on byte arrays or ByteBuffer
SetCallback(Callback)
Set Callback into instance of IProducer<K, V>
public void SetCallback(Callback callback)