Overview of rsh-config
This section is a brief overview of how rsh-config is put together and how it functions. For details on using it or for examples of configurations, see the examples page.Table of Contents
Components and Their Interactions
The above diagram gives a highlight of the components involved in using rsh-config. Configurations are retrieved through the Configurations.get(appName) call. The application name should be something unique to your component or application. The file [appName]-config.properties is then found and parsed using the ConfigurationSetSource class. This implementation of ConfigurationSource knows how to read the contents of your config file and then how to construct and stack the specified ConfigurationSources. The multiple ConfigurationSources (well, it could be just one, but it supports any number of sources) are then returned in the order of their priority, lowest number being at the top of the set in terms of being considered for a property value.
The ConfigurationSet looks for values according to the priority of the source. So sources with a priority of 0 or 1 are considered more authoritative than sources with a priority of 6 or 59. If a property/setting is not found in a more authoritative source, it is then looked for in the next source and the next. This allows you to override the settings of other sources, especially through using a SysEnv source at priority 0.
For more information on usage and configuration, see the examples page.
/rsh tech

