Status
Please keep the discussion on the mailing list rather than commenting on the wiki (wiki discussions get unwieldy fast).
Motivation
The method getDefaultTrigger() in WindowAssigner takes a StreamExecutionEnvironment parameter, but this parameter is not actually used for any subclasses of WindowAssigner. Therefore, it is unnecessary to include this parameter.
Public Interfaces
Modify the WindowAssigner#getDefaultTrigger(StreamExecutionEnvironment env) to WindowAssigner#getDefaultTrigger().
Proposed Changes
There are two steps to modify the WindowAssigner#getDefaultTrigger(StreamExecutionEnvironment env) to WindowAssigner#getDefaultTrigger().
First step, add a new abstract method getDefaultTrigger() to WindowAssigner. Implement the getDefaultTrigger() and make getDefaultTrigger(StreamExecutionEnvironment env) invoke it in the subclasses of WindowAssigner.
Second step, mark the getDefaultTrigger(StreamExecutionEnvironment env) as deprecated and remove getDefaultTrigger(StreamExecutionEnvironment env) in next major release..
Compatibility, Deprecation, and Migration Plan
- What impact (if any) will there be on existing users?
- For the users that rely on the getDefaultTrigger method, they will have to migrate to the no parameter variants. This migration shouldn't be difficult.
- As the WindowAssigner abstract class is part of the public API we will deprecate the method 2 releases before removal.