Welcome back to AWIPS Tips!
AWIPS uses a hierarchical system known as Localization to allow site and user-specific customizations of many aspects of EDEX and CAVE, such as available menu items, color maps, and derived parameters. In Unidata’s AWIPS there are four defined localization levels:
- BASE - files that should never be changed by users and are applicable to all users
- CONFIGURED - files that should never be changed by users but are site-specific
- SITE - files that contain site-specific configurations and are used by all users using that site
- USER - files that have been configured by a specific user
NOTE: The NWS Version of AWIPS uses REGION and WORKSTATION levels as well. Our USER configuration saves as user@workstation to help eliminate possible duplicated usernames because of our large user base.
As mentioned above, these levels are hierarchical, so certain files take precedence over others. For example, a User-level localization file will supersede all other levels, while Site takes precedence over Configured and Base, and Configured takes precedence over Base. Below is a visual graphic to remember the order of importance, Base is the default, and the levels above take precedence over each level below them. Typically we call these non-base level configurations “overrides” since we are overriding the lower level configurations.
These localization levels reside in the Utility tree on EDEX (/awips2/edex/data/utility) and may exist in the following localization types:
- cave_config - CAVE files tied to preference stores
- cave_static - files only used by CAVE and typically won’t have any base configurations (base configurations would reside on the CAVE machine in /awips2/cave/etc)
- common_static - files both CAVE and EDEX use
- edex_static - these are files used only by EDEX and typically won’t have any user configurations
Many of the CAVE overrides (found in cave_static and some common_static) are considered “incremental” overrides, indicating that the files at different localization levels will be combined. For example, if you just want to change one small aspect of a styleRule, you can just make that one small change as a User override, and the rest will still be set from the Base file (or other files lower in the override structure, as shown in the image above).
In comparison, typically, EDEX overrides (edex_static and some common_static) are an absolute override file, indicating that a higher priority version of the file will completely replace a lower priority version of the file.
It can be important to understand this structure when troubleshooting various behavior users are experiencing, and when wanting to implement default changes for users.
Check back in two weeks for the next blog post, where we’ll discuss how to make some user configurations.
To view archived blogs, visit the AWIPS Tips blog tag, and get notified of the latest updates from the AWIPS team by signing up for the AWIPS mailing list. Questions or suggestions for the team on future topics? Let us know at email@example.com