You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by Mathieu Fenniak <ma...@replicon.com> on 2016/12/04 04:44:18 UTC
Extending KStream DSL in applications
Hello devs,
I'd like to be able to create my own KTableProcessorSupplier implementation
in a Kafka Streams application, but it's currently not possible without the
use of reflection due to KTableImpl's valueGetterSupplier
& enableSendingOldValues methods being package-local.
Would there be any opposition to a PR to make these methods public?
I do understand that implementing interfaces & using classes in an
"internals" package are obviously going to be an unstable API. But my
current alternative is to swap from DSL to low-level API via a topic, and
then swap back, when I can't do something directly with the existing API...
and that makes my extensions quite divergent from anything I could feasibly
contribute back to the library in the future. :-)
Thanks,
Mathieu
Re: Extending KStream DSL in applications
Posted by "Matthias J. Sax" <ma...@confluent.io>.
Hi,
personally, I do not see a good reason to change it. I guess, the
simplest thing for you to do is, to patch the code in a private repo and
build the library by yourself.
That's the beauty of open source :)
-Matthias
On 12/3/16 8:44 PM, Mathieu Fenniak wrote:
> Hello devs,
>
> I'd like to be able to create my own KTableProcessorSupplier implementation
> in a Kafka Streams application, but it's currently not possible without the
> use of reflection due to KTableImpl's valueGetterSupplier
> & enableSendingOldValues methods being package-local.
>
> Would there be any opposition to a PR to make these methods public?
>
> I do understand that implementing interfaces & using classes in an
> "internals" package are obviously going to be an unstable API. But my
> current alternative is to swap from DSL to low-level API via a topic, and
> then swap back, when I can't do something directly with the existing API...
> and that makes my extensions quite divergent from anything I could feasibly
> contribute back to the library in the future. :-)
>
> Thanks,
>
> Mathieu
>