如何使用branch()方法获取下游

问题描述 投票:0回答:1

在kafka-streams中,流上的branch()方法已被弃用。 我从 COnfluence 中找到了一些代码片段,我现在应该使用 split() 和 Branch() 方法,如下所示:

artikelEvents.split()
                .branch((key, val) -> val.getKategorie().equals("Computer & Büro"), Branched.as("computer"))
                .branch((key, val) -> val.getKategorie().equals("Smartphones"), Branched.as("smartphones"))
                .branch((key, val) -> val.getKategorie().equals("Fotografie"), Branched.as("fotografie"))
        ;

我的问题是如何获得不同下游分支的结果?

apache-kafka-streams
1个回答
0
投票

好的,经过一番研究,我找到了一个适合我的解决方案:

final Map<String, KStream<String, ArtikelEvent>> branchedArtikelEventMap = artikelEvents.split(Named.as("branch-"))
                .branch((key, val) -> val.getKategorie().equals("Computer & Büro"), Branched.as("computer"))
                .branch((key, val) -> val.getKategorie().equals("Smartphones"), Branched.as("smartphones"))
                .branch((key, val) -> val.getKategorie().equals("Fotografie"), Branched.as("fotografie"))
                .defaultBranch();
© www.soinside.com 2019 - 2024. All rights reserved.