Java Scala—如何将回调传递给方法
我试图通过Scala(来自Kafka:)公开Java方法Java Scala—如何将回调传递给方法,java,scala,apache-kafka,Java,Scala,Apache Kafka,我试图通过Scala(来自Kafka:)公开Java方法这是原始的Java方法: public void commitAsync(OffsetCommitCallback callback) 如何将回调传递给Scala中的方法?我有点像: def commitAsync() = { consumer.commitAsync(OffsetCommitCallback callback) } 谢谢。 奖励积分-测试的效果如何,例如使用MockitoSugar?您可以这样处理回调:
这是原始的Java方法:
public void commitAsync(OffsetCommitCallback callback)
如何将回调传递给Scala中的方法?我有点像:
def commitAsync() = {
consumer.commitAsync(OffsetCommitCallback callback)
}
谢谢。
奖励积分-测试的效果如何,例如使用MockitoSugar?您可以这样处理回调:
def commitAsync() = {
consumer.commitAsync(new OffsetCommitCallback() {
def onComplete(m: java.util.Map[TopicPartition, OffsetAndMetadata], e: Exception) {
//...
}
})
}
是一个接口,(“类似于”Scala中的trait),因此可以匿名初始化实例
是Spark项目中的快速幻影。您可以如下处理回调:
def commitAsync() = {
consumer.commitAsync(new OffsetCommitCallback() {
def onComplete(m: java.util.Map[TopicPartition, OffsetAndMetadata], e: Exception) {
//...
}
})
}
是一个接口,(“类似于”Scala中的trait),因此可以匿名初始化实例
是Spark项目中的快速幻影。谢谢。。为了理解,我们正在通过调用commitAsync
方法创建新的OffsetCommitCallback
?它首先创建一个OffsetCommitCallback
的具体实例,然后作为回调传递给commitAsync
,谢谢。。因此,通过这种方式,任何人都可以调用Scala方法commitAsync
,它将在完成后返回TopicPartition和Offset。。。有人会怎么称呼这个Scala方法?(使用哪些参数?)。不需要直接从客户端调用它。我需要为此创建一个“测试用例”。如何启动对该方法的“调用”以及如何测试它?谢谢,谢谢。。为了理解,我们正在通过调用commitAsync
方法创建新的OffsetCommitCallback
?它首先创建一个OffsetCommitCallback
的具体实例,然后作为回调传递给commitAsync
,谢谢。。因此,通过这种方式,任何人都可以调用Scala方法commitAsync
,它将在完成后返回TopicPartition和Offset。。。有人会怎么称呼这个Scala方法?(使用哪些参数?)。不需要直接从客户端调用它。我需要为此创建一个“测试用例”。如何启动对该方法的“调用”以及如何测试它?谢谢