Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Dynamic configurations (runtime changes)
  • Improved API (error handling)
  • Derived values support
  • Modules support
  • File Based

The under development SpringUI and its associated features made us recognize that, changing the core ConfigurationManager, is an important change to make DSpace more user friendlyWe also think that modules should be replaced by groups, that is, configuration modules would be included in the main configuration file (like apache) and replace the concept of module distinction by grouping parameters.
Basically, each module could have its own group.

NOTE: Our team have internally discussed about a database based implementation (https://wiki.duraspace.org/display/DSPACE/Database+Persistence+of+Configuration+State), but it would have conceptual problems. Mainly:

  • How to get the database configuration? (it must be placed somewhere - not in the database)
  • Reading configurations from there will put an avoidable extra task on top of the DB
  • On database crashes, some services (that do not use database at all), will also crash
  • Derived values aren't advisable (it would make many SQL queries to get a simple configuration value)

The under development SpringUI and its associated features made us recognize that, changing the core ConfigurationManager, is an important change to make DSpace more user friendly.