Class MarlinProducerImpl
- java.lang.Object
-
- com.mapr.fs.jni.MarlinJniClient
-
- com.mapr.fs.jni.MarlinJniProducer
-
- com.mapr.kafka.eventstreams.impl.producer.MarlinProducerImpl
-
- Direct Known Subclasses:
MarlinProducerImplV10
public class MarlinProducerImpl extends com.mapr.fs.jni.MarlinJniProducer
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classMarlinProducerImpl.WorkerThread
-
Field Summary
Fields Modifier and Type Field Description protected static org.slf4j.LoggerLOGprotected com.mapr.fs.proto.Marlinserver.MarlinInternalDefaultsmarlinInternalDefaultsprotected longproducerIdprotected static intSEND_BATCH_SIZE
-
Constructor Summary
Constructors Constructor Description MarlinProducerImpl(org.apache.kafka.clients.producer.ProducerConfig config)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected org.apache.kafka.common.metrics.MetricsbuildMetrics(org.apache.kafka.clients.producer.ProducerConfig config)protected org.apache.kafka.clients.producer.internals.Sender.SenderMetricsbuildSensors(org.apache.kafka.common.metrics.Metrics metrics)voidclose()voidclose(long timeout, java.util.concurrent.TimeUnit unit)Deprecated.voidclose(java.time.Duration duration)protected voidcloseInternal()protected java.util.concurrent.Future<org.apache.kafka.clients.producer.RecordMetadata>do_send(java.lang.String topic, int feed, java.lang.Object keyObj, byte[] key, java.lang.Object valueObj, byte[] value, org.apache.kafka.clients.producer.Callback callback, long timestamp)protected intencodeJniData(MarlinProducerImpl.WorkerThread.WorkerState ws, int recSz)voidflush()protected org.apache.kafka.clients.producer.RecordMetadatagetDummyRecordMetadata(java.lang.String topic)protected MarlinProducerResultImplgetMarlinProducerResultImpl(java.lang.String topic, int feed, org.apache.kafka.clients.producer.Callback callback, int serKeySz, int serValSz)protected ProducerRecordJobgetProducerRecordJob()protected ProducerRecordJobgetProducerRecordJob(MarlinProducerResultImpl result, byte[] key, byte[] value, long timestamp)java.util.List<org.apache.kafka.common.PartitionInfo>getTopicInfo(java.lang.String topic)voidhandleJniCallbacks(int length, long[] offsets, long[] timestamps, com.mapr.fs.jni.MarlinProducerResult[] results, int feedid, int errorCode)voidhandleJniTopicMetadata(java.lang.String topicNames, int[] topicNameSizes, int[] numPartitionsForTopic, int arraySize)java.util.Map<org.apache.kafka.common.MetricName,? extends org.apache.kafka.common.Metric>metrics()<K,V>
java.util.concurrent.Future<org.apache.kafka.clients.producer.RecordMetadata>send(org.apache.kafka.clients.producer.ProducerRecord<K,V> record, int feed, byte[] serializedKey, byte[] serializedValue, org.apache.kafka.clients.producer.Callback callback)
-
-
-
Field Detail
-
LOG
protected static final org.slf4j.Logger LOG
-
SEND_BATCH_SIZE
protected static final int SEND_BATCH_SIZE
- See Also:
- Constant Field Values
-
producerId
protected long producerId
-
marlinInternalDefaults
protected final com.mapr.fs.proto.Marlinserver.MarlinInternalDefaults marlinInternalDefaults
-
-
Method Detail
-
buildMetrics
protected org.apache.kafka.common.metrics.Metrics buildMetrics(org.apache.kafka.clients.producer.ProducerConfig config)
-
buildSensors
protected org.apache.kafka.clients.producer.internals.Sender.SenderMetrics buildSensors(org.apache.kafka.common.metrics.Metrics metrics)
-
metrics
public java.util.Map<org.apache.kafka.common.MetricName,? extends org.apache.kafka.common.Metric> metrics()
-
getDummyRecordMetadata
protected org.apache.kafka.clients.producer.RecordMetadata getDummyRecordMetadata(java.lang.String topic)
-
send
public <K,V> java.util.concurrent.Future<org.apache.kafka.clients.producer.RecordMetadata> send(org.apache.kafka.clients.producer.ProducerRecord<K,V> record, int feed, byte[] serializedKey, byte[] serializedValue, org.apache.kafka.clients.producer.Callback callback) throws org.apache.kafka.common.KafkaException- Throws:
org.apache.kafka.common.KafkaException
-
do_send
protected java.util.concurrent.Future<org.apache.kafka.clients.producer.RecordMetadata> do_send(java.lang.String topic, int feed, java.lang.Object keyObj, byte[] key, java.lang.Object valueObj, byte[] value, org.apache.kafka.clients.producer.Callback callback, long timestamp) throws org.apache.kafka.common.KafkaException- Throws:
org.apache.kafka.common.KafkaException
-
getProducerRecordJob
protected ProducerRecordJob getProducerRecordJob(MarlinProducerResultImpl result, byte[] key, byte[] value, long timestamp)
-
getProducerRecordJob
protected ProducerRecordJob getProducerRecordJob()
-
getMarlinProducerResultImpl
protected MarlinProducerResultImpl getMarlinProducerResultImpl(java.lang.String topic, int feed, org.apache.kafka.clients.producer.Callback callback, int serKeySz, int serValSz)
-
flush
public void flush() throws org.apache.kafka.common.KafkaException- Throws:
org.apache.kafka.common.KafkaException
-
handleJniCallbacks
public void handleJniCallbacks(int length, long[] offsets, long[] timestamps, com.mapr.fs.jni.MarlinProducerResult[] results, int feedid, int errorCode)
-
handleJniTopicMetadata
public void handleJniTopicMetadata(java.lang.String topicNames, int[] topicNameSizes, int[] numPartitionsForTopic, int arraySize)
-
getTopicInfo
public java.util.List<org.apache.kafka.common.PartitionInfo> getTopicInfo(java.lang.String topic) throws org.apache.kafka.common.KafkaException- Throws:
org.apache.kafka.common.KafkaException
-
close
public void close()
-
close
@Deprecated public void close(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedExceptionDeprecated.- Throws:
java.lang.InterruptedException
-
close
public void close(java.time.Duration duration) throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
closeInternal
protected void closeInternal()
-
encodeJniData
protected int encodeJniData(MarlinProducerImpl.WorkerThread.WorkerState ws, int recSz)
-
-