-
Enhancement
-
Resolution: Done
-
Major
-
5.0.0.ALPHA2
-
None
-
Documentation (Ref Guide, User Guide, etc.), Release Notes, Compatibility/Configuration
As is, it is rather tedious sometimes to set every little configuration toggle using coarse APIs like GlobalConfiguration or Configuration. We could simplify this model and allow users to set related "units" of configuration using more "grouped" APIs as:
class GlobalConfiguration { MarshallerBuilder configureMarshaller(); } class MarshallerBuilder { MarshallerBuilder setInstance(Marshaller m); MarshallerBuilder setType(Class<? extends Marshaller> c); MarshallerBuilder setVersion(String s); MarshallerBuilder addProperty(String name, String value); MarshallerBuilder addProperties(Properties p); }
And on top if we can use fluent API to make configuration setting even easier:
globalConf.configureMarshaller().setType(MyMarshaller.class).addProperty("foo", "bar").setVersion("5.0");