Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-1726

Typed configuration framework

    XMLWordPrintableJSON

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

          Activity

            People

              ctubbsii Christopher Tubbs
              ctubbsii Christopher Tubbs
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: