Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Won't Fix
-
None
-
None
-
None
-
None
Description
The old Property enums were great, but now that we're looking at similar things for client-side configuration (for ACCUMULO-1009 and others), a more generic framework might be useful.
Ideas:
- The configuration objects themselves should be generic (org.apache.commons.configuration.Configuration, or java.util.Properties preferred... probably the former) so as to be flexible in their construction.
- The possible keys in the configuration objects should be enumerated and come from a scope-specific source (example: MonitorProperties, TServerProperties, ClientProperties)
- Use java generics, something like MonitorConfiguration extends TypedConfiguration<MonitorProperties> and TypedConfiguration<T> extends Configuration and MonitorProperties extends TypedProperties.
- Sources should be combinable to support multiple scopes in a single configuration.
- Basic types should be provided and extensible, and validated by the framework.
- Values should be retrievable as any type, provided they validate as the target type.
Attachments
Issue Links
- relates to
-
ACCUMULO-1397 Provide shell support for .accumulorc file
- Resolved
-
ACCUMULO-1635 Support external configuration in client API
- Resolved
-
ACCUMULO-1045 Create a suite of shell commands or common features
- Open
-
ACCUMULO-1009 Support encryption over the wire
- Resolved
-
ACCUMULO-1268 add client wide timeout setting
- Open
-
ACCUMULO-415 support iterator profiles
- Resolved
-
ACCUMULO-1422 Move configuration property descriptions to a resource file
- Resolved