Actually I wanted to propose a slight change to the proposal. Therefore I want to change my vote to -1 for now.
I suggest to change the Configurable interface to ConfigurableFactory: public interface ConfigurableFactory<T> { /** * Creates an instance from the given configuration. */ TfromConfiguration(ConfigurationReader configuration); /** * Writes this instance to the given configuration. */ void toConfiguration(T value, ConfigurationWriter configuration); } And the corresponding method in the builder to: <T> TypedConfigOptionBuilder<T> configurableType(Class<? extends ConfigurableFactory<T>> clazz) { return new TypedConfigOptionBuilder<>(key, clazz); } This way we can keep the "configurable" objects immutable. Best, Dawid On 27/08/2019 13:28, Timo Walther wrote: > Hi everyone, > > thanks for the great feedback we have received for the draft of > FLIP-54. The discussion seems to have reached an agreement. Of course > this doesn't mean that we can't propose further improvements on > ConfigOption's and Flink configuration in general in the future. It is > just one step towards having a better unified configuration for the > project. > > Please vote for the following design document: > > https://docs.google.com/document/d/1IQ7nwXqmhCy900t2vQLEL3N2HIdMg-JO8vTzo1BtyKU/edit# > > > I will convert it to a Wiki page afterwards. > > Thanks, > Timo > >
signature.asc
Description: OpenPGP digital signature