[
https://issues.apache.org/jira/browse/FLINK-23295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17403198#comment-17403198
]
Tzu-Li (Gordon) Tai commented on FLINK-23295:
---------------------------------------------
flink-statefun/master: 1589e03440b33c2cf785172017111cfb91762c3f
> Introduce extension module SPI to StateFun
> ------------------------------------------
>
> Key: FLINK-23295
> URL: https://issues.apache.org/jira/browse/FLINK-23295
> Project: Flink
> Issue Type: Sub-task
> Components: Stateful Functions
> Reporter: Tzu-Li (Gordon) Tai
> Assignee: Tzu-Li (Gordon) Tai
> Priority: Major
> Fix For: statefun-3.1.0
>
>
> To support pluggable extensions, e.g. custom HTTP clients for remote
> invocation, we'd like to add a generic way for users to provide their own
> implementations of various pluggable components.
> This will take the form of {{ExtensionModule}}s, where a user that is
> providing an extension implements such a module to be included into the
> StateFun app. Each {{ExtensionModule}} may bind multiple extensions
> identified by unique typenames. Other components of the application, such as
> functions and IO modules, may access these extensions through their typenames.
> The SPI would likely look like this:
> {code}
> public interface ExtensionModule {
> void configure(Map<String, String> globalConfiguration, Binder binder);
> interface Binder {
> <T> void bindExtension(TypeName typeName, T extension);
> }
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)