本文整理汇总了Java中org.apache.kafka.clients.producer.internals.ProduceRequestResult类的典型用法代码示例。如果您正苦于以下问题:Java ProduceRequestResult类的具体用法?Java ProduceRequestResult怎么用?Java ProduceRequestResult使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ProduceRequestResult类属于org.apache.kafka.clients.producer.internals包,在下文中一共展示了ProduceRequestResult类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: send
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
/**
* Adds the record to the list of sent records.
*
* @see #history()
*/
@Override
public synchronized Future<RecordMetadata> send(ProducerRecord<K, V> record, Callback callback) {
verifyProducerState();
int partition = 0;
if (!this.cluster.partitionsForTopic(record.topic()).isEmpty())
partition = partition(record, this.cluster);
TopicPartition topicPartition = new TopicPartition(record.topic(), partition);
ProduceRequestResult result = new ProduceRequestResult(topicPartition);
FutureRecordMetadata future = new FutureRecordMetadata(result, 0, RecordBatch.NO_TIMESTAMP, 0L, 0, 0);
long offset = nextOffset(topicPartition);
Completion completion = new Completion(offset, new RecordMetadata(topicPartition, 0, offset,
RecordBatch.NO_TIMESTAMP, Long.valueOf(0L), 0, 0), result, callback);
if (!this.transactionInFlight)
this.sent.add(record);
else
this.uncommittedSends.add(record);
if (autoComplete)
completion.complete(null);
else
this.completions.addLast(completion);
return future;
}
开发者ID:YMCoding,项目名称:kafka-0.11.0.0-src-with-comment,代码行数:31,代码来源:MockProducer.java
示例2: testTimeout
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
/**
* Test that waiting on a request that never completes times out
*/
@Test
public void testTimeout() throws Exception {
ProduceRequestResult request = new ProduceRequestResult(topicPartition);
FutureRecordMetadata future = new FutureRecordMetadata(request, relOffset,
RecordBatch.NO_TIMESTAMP, 0L, 0, 0);
assertFalse("Request is not completed", future.isDone());
try {
future.get(5, TimeUnit.MILLISECONDS);
fail("Should have thrown exception.");
} catch (TimeoutException e) { /* this is good */
}
request.set(baseOffset, RecordBatch.NO_TIMESTAMP, null);
request.done();
assertTrue(future.isDone());
assertEquals(baseOffset + relOffset, future.get().offset());
}
开发者ID:YMCoding,项目名称:kafka-0.11.0.0-src-with-comment,代码行数:21,代码来源:RecordSendTest.java
示例3: send
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
/**
* Adds the record to the list of sent records.
*
* @see #history()
*/
@Override
public synchronized Future<RecordMetadata> send(ProducerRecord<K, V> record, Callback callback) {
int partition = 0;
if (this.cluster.partitionsForTopic(record.topic()) != null)
partition = partition(record, this.cluster);
ProduceRequestResult result = new ProduceRequestResult();
FutureRecordMetadata future = new FutureRecordMetadata(result, 0, Record.NO_TIMESTAMP, 0, 0, 0);
TopicPartition topicPartition = new TopicPartition(record.topic(), partition);
long offset = nextOffset(topicPartition);
Completion completion = new Completion(topicPartition, offset,
new RecordMetadata(topicPartition, 0, offset, Record.NO_TIMESTAMP, 0, 0, 0),
result, callback);
this.sent.add(record);
if (autoComplete)
completion.complete(null);
else
this.completions.addLast(completion);
return future;
}
开发者ID:txazo,项目名称:kafka,代码行数:25,代码来源:MockProducer.java
示例4: testTimeout
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
/**
* Test that waiting on a request that never completes times out
*/
@Test
public void testTimeout() throws Exception {
ProduceRequestResult request = new ProduceRequestResult();
FutureRecordMetadata future = new FutureRecordMetadata(request, relOffset,
Record.NO_TIMESTAMP, 0, 0, 0);
assertFalse("Request is not completed", future.isDone());
try {
future.get(5, TimeUnit.MILLISECONDS);
fail("Should have thrown exception.");
} catch (TimeoutException e) { /* this is good */
}
request.done(topicPartition, baseOffset, null);
assertTrue(future.isDone());
assertEquals(baseOffset + relOffset, future.get().offset());
}
开发者ID:txazo,项目名称:kafka,代码行数:20,代码来源:RecordSendTest.java
示例5: Completion
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
public Completion(long offset,
RecordMetadata metadata,
ProduceRequestResult result,
Callback callback) {
this.metadata = metadata;
this.offset = offset;
this.result = result;
this.callback = callback;
}
开发者ID:YMCoding,项目名称:kafka-0.11.0.0-src-with-comment,代码行数:10,代码来源:MockProducer.java
示例6: asyncRequest
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
public ProduceRequestResult asyncRequest(final long baseOffset, final RuntimeException error, final long timeout) {
final ProduceRequestResult request = new ProduceRequestResult(topicPartition);
Thread thread = new Thread() {
public void run() {
try {
sleep(timeout);
request.set(baseOffset, RecordBatch.NO_TIMESTAMP, error);
request.done();
} catch (InterruptedException e) { }
}
};
thread.start();
return request;
}
开发者ID:YMCoding,项目名称:kafka-0.11.0.0-src-with-comment,代码行数:15,代码来源:RecordSendTest.java
示例7: Completion
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
public Completion(TopicPartition topicPartition,
long offset,
RecordMetadata metadata,
ProduceRequestResult result,
Callback callback) {
this.metadata = metadata;
this.offset = offset;
this.result = result;
this.callback = callback;
this.topicPartition = topicPartition;
}
开发者ID:txazo,项目名称:kafka,代码行数:12,代码来源:MockProducer.java
示例8: asyncRequest
import org.apache.kafka.clients.producer.internals.ProduceRequestResult; //导入依赖的package包/类
public ProduceRequestResult asyncRequest(final long baseOffset, final RuntimeException error, final long timeout) {
final ProduceRequestResult request = new ProduceRequestResult();
Thread thread = new Thread() {
public void run() {
try {
sleep(timeout);
request.done(topicPartition, baseOffset, error);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
thread.start();
return request;
}
开发者ID:txazo,项目名称:kafka,代码行数:16,代码来源:RecordSendTest.java
注:本文中的org.apache.kafka.clients.producer.internals.ProduceRequestResult类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论