[ https://issues.apache.org/jira/browse/FLINK-9538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16504352#comment-16504352 ]
ASF GitHub Bot commented on FLINK-9538: --------------------------------------- Github user yanghua commented on a diff in the pull request: https://github.com/apache/flink/pull/6134#discussion_r193651829 --- Diff: flink-runtime/src/main/java/org/apache/flink/runtime/state/KeyedStateFunction.java --- @@ -25,13 +25,13 @@ * <p>This functionality is only available through the * {@code BroadcastConnectedStream.process(final KeyedBroadcastProcessFunction function)}. */ -public abstract class KeyedStateFunction<K, S extends State> { +public interface KeyedStateFunction<K, S extends State> { --- End diff -- @dawidwys can I change current usage like : ``` // valid state value via applyToAllKeys(). backend.applyToAllKeys(VoidNamespace.INSTANCE, VoidNamespaceSerializer.INSTANCE, listStateDescriptor, new KeyedStateFunction<Integer, ListState<String>>() { @Override public void process(Integer key, ListState<String> state) throws Exception { assertEquals("Hello" + key, state.get().iterator().next()); } }); // clear state via applyToAllKeys(). backend.applyToAllKeys(VoidNamespace.INSTANCE, VoidNamespaceSerializer.INSTANCE, listStateDescriptor, new KeyedStateFunction<Integer, ListState<String>>() { @Override public void process(Integer key, ListState<String> state) throws Exception { state.clear(); } }); ``` to lambda function style to verify the change? > Make KeyedStateFunction an interface > ------------------------------------ > > Key: FLINK-9538 > URL: https://issues.apache.org/jira/browse/FLINK-9538 > Project: Flink > Issue Type: Improvement > Reporter: Dawid Wysakowicz > Assignee: vinoyang > Priority: Major > > I suggest to change the KeyedStateFunction from abstract class to interface > (FunctionalInterface in particular) to enable passing lambdas. -- This message was sent by Atlassian JIRA (v7.6.3#76005)