从java函数中的数据源返回Stream值

时间:2018-03-13 11:44:31

标签: stream apache-kafka java-stream

假设数据是用Kafka编写的。我想编写一个函数来在Kafka中返回Stream无界值。以下是我的功能模板:

public static Stream<Byte[]> getData(String topic, int from){
        // some kafka configurations
        consumer.subscribe(topic, listener);
        ConsumerRecords<String, byte[]> records;
        Stream<Byte[]> res ;
        while (true){
            records = consumer.poll(100);
            for (ConsumerRecord<String, byte[]> record : records) {
                res.add(record);
            }
        return res;
        }
}

我知道某处语法错误,但这就是我需要的。例如,在main函数中,有人获得getData函数的值:

Stream<Byte[]> results = getData("topic", 0);

并且数据作为流一次又一次地推送到results变量。 我怎么能这样做,有可能吗?

0 个答案:

没有答案