我正在使用Kafka Streams和Scala构建应用程序。在其中,我有一个用例,我必须在map()
上应用KStream
。
由于Kafka Streams不提供Scala API,因此我必须编写map
函数,如下所示:
val builder = new KStreamBuilder()
val originalStream = builder.stream("SourceTopic")
val mappedStream =
originalStream.map[String, Integer] {
new KeyValueMapper[String, String, KeyValue[String, Integer]] {
override def apply(key: String, value: String): KeyValue[String, Integer] = {
new KeyValue(key, new Integer(value.length))
}
}
}
上面的代码编译/运行正常。但是,发出警告 - Convert Expression to Single Abstract Method
。
那么,我的问题是如何将上面的地图表达式转换为SAM?
感谢任何帮助!