OptionController () { return super.getOptionController() .onValue("PLUGINS_MODULES", () -> StreamEx.of(PLUGINS_MODULES).map(set -> String.join(",", set.modules)).toMutableList(), newList -> { PLUGINS_MODULES.clear(); StreamEx.of(newList).map(line -> { PluginModuleSet set = new PluginModuleSet(); set.modules = StreamEx.split(line, ",").toCollection(LinkedHashSet::new); return set; }).into(PLUGINS_MODULES); myPluginModuleSetByModuleName.drop(); }); }