You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Laurent T (JIRA)" <ji...@apache.org> on 2017/09/18 14:34:09 UTC

[jira] [Created] (KAFKA-5924) Add the compose method to the Kafka Stream API

Laurent T created KAFKA-5924:
--------------------------------

             Summary: Add the compose method to the Kafka Stream API
                 Key: KAFKA-5924
                 URL: https://issues.apache.org/jira/browse/KAFKA-5924
             Project: Kafka
          Issue Type: Wish
          Components: streams
            Reporter: Laurent T
            Priority: Minor


Hi,

I'm referencing RxJava for it's [compose method|https://github.com/ReactiveX/RxJava/wiki/Implementing-Your-Own-Operators#transformational-operators] which is very handy. It would be great if the Streams API would give us something similar. It's pretty easy to implement and allows to have much more clarity to the code (it avoids breaking the linearity of the code when you want to reuse parts of the stream topology). e.g.

Without compose:
{code:java}
TopologyUtils
    .myUtil(topology
        .map(...)
        .flatMap(...)
        .through(...))
    .map(...)
    .to(...);
{code}

With compose:
{code:java}
topology
    .map(...)
    .flatMap(...)
    .through(...)
    .compose(TopologyUtils::myUtil)
    .map(...)
    .to(...);
{code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)