...
The open() method in RichFunction requires a Configuration instance as an argument, which is always passed as a new instance without any configuration parameters in AbstractUdfStreamOperator#open. Thus, it is unnecessary to include this parameter in the open() method. To keep the signature, we can replace the Configuration argument with an OpenContext. The OpenContext is able to add new parameters in the future.
Public Interfaces
Modify the RichFunction#openthe RichFunction#open(Configuration parameters) to RichFunction#open(OpenContext context).
Proposed Changes
There are two steps to modify the RichFunction#open(Configuration parameters) to RichFunction#open(OpenContext context).
First step, add a new method open() to RichFunction interface. Implement the open(OpenContext context) and make open(Configuration parameters) invoke it in the implementations of RichFunction.
...