Versions Compared

Key

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

...

Settings are referred to inside NetarchiveSuite by their path in the XML structure. For instance, the storeRetries setting in arcrepositoryClient under common is referred to with the string settings.common.arcrepositoryClient.storeRetries. However, to avoid typos, each known setting has its path defined as a String constant in the a module Settings class(e.g. HarvesterSettings), which is used throughout the code (also by deploy in checks of whether the settings are known). The module Settings class file also includes description of the setting in their javadoc.

To add a new general setting, the following steps need to be taken:

1) The Settings class should get a definition for the path of the setting. This String, although a constant, must mot be declared final since settings are initialised by a static initialiser in the class

2) Javadoc for the definition must including the path name of the setting as well as description of the setting. all

3) All default settings.xml files must be updated (including those in the unit tests). examples

4) examples/settings_example.xml must be updated.

Note that there are no XML Schema to be updated, because the use of default settings means that a settings file does not need to be there, and in the case of settings for plug-ins we generally do not know which setting will be used.

Note also that the <<Configuration Manual 3.14|Configuration Manual>> Configuration Manual includes a description of how deploy can be used to validate whether the settings in a settings file are valid (not necessarily exhaustive!).

...