By default McIDAS-V looks in four places for the resources it uses to configure itself. A user can enter the full path to the resource file, or use one of the four macros below which McIDAS-V will replace with the appropriate path:
idv.properties = %APPPATH%/mcidasv.properties;%SITEPATH%/mcidasv.properties;%USERPATH%/mcidasv.properties;You can also specify one or more properties files as command line arguments:
-properties your_properties_fileMcIDAS-V processes these properties files in order, with properties defined in later files overriding those defined previously.
Once the properties have been processed McIDAS-V initializes its resources by reading in one or more resource definition files. These are called "RBI" files - (Resource Bundle for the IDV). These are XML files, the locations of which are defined by the idv.resourcefiles property:
idv.resourcefiles = %USERPATH%/mcidasv.rbi;%SITEPATH%/mcidasv.rbi;%APPPATH%/mcidasv.rbi;%IDVPATH%/mcidasv.rbiWhen McIDAS-V is started for the first time, the application writes out an example RBI file to the ~user/McIDAS-V directory. This file defines the location of different collections of resources. When originally created, this mcidasv.rbi file doesn't define any paths to the different resources used by McIDAS-V, but it can be used as a template to do so. To show how this can be done, there is a commented out entry to define where McIDAS-V can find the XML files that define the color tables:
<resources name="idv.resource.colortables" loadmore="true"> <resource location="%USERPATH%/colortables.xml"/> <resource location="%SITEPATH%/colortables.xml"/> <resource location="http://www.somewebsite.edu/somepath/colortables.xml"/> </resources>
The example above tells McIDAS-V to look for color tables in the user path, sitepath, and an online URL. McIDAS-V uses the first entry in this list as the file path to write out color tables that are created using the color table editor.
The loadmore tag for the colortable resource is set to "true" by default. When this is set to true, then the colortables resource contained in all of the directories in the idv.resourcefiles property will be used, meaning the user will have access to system color tables (in the %APPPATH% directory) as well. If this loadmore tag were set to "false", then only the mcidasv.rbi contained in the %USERPATH% directory (the first path contained in the idv.resourcefiles property) would be used for the colortables resource, system resource.
This gives the flexibility to customize McIDAS-V to us only resources set by the user and not those used by McIDAS-V by default. This mcidasv.rbi file does not contain all of the resource files available for use by McIDAS-V, but instead contains a subset of commonly-used resources. Additional resources can be added to this file by the user.
An example use case of this mcidasv.rbi file is if your site needs to use a set of special color tables that you have created. Once the color tables have been created in McIDAS-V, they are saved to ~user/McIDAS-V/colortables.xml (as defined by the resource paths defined in the app path's mcidasv.rbi). This file can then be copied to a web site or on a shared file system that is pointed to by the McIDAS-V -sitepath flag. Now, your users simply need to define the -sitepath at startup and they will naturally pick up the color tables saved in colortables.xml.
Here is the list of the resource identifiers, description and file pattern (for use with plugins) of the different resources McIDAS-V uses.Resource Identifier | Description | File Pattern |
idv.resource.actions | Actions | actions.xml$ |
idv.resource.addeservers | ADDE servers and datasets | addeservers.xml$ |
idv.resource.aliases | Data aliases | aliases.xml$ |
idv.resource.autodisplays | Automatic display creation | autodisplays.xml$ |
idv.resource.backgroundwms | Background WMS images | backgroundwms.xml$ |
idv.resource.bundles | Default bundles that are evaluated at start up | no pattern |
idv.resource.bundlexml | Bundle xml | no pattern |
idv.resource.categories | Display categories | categories.xml$ |
idv.resource.choosers | The definition of the user interface for data choosers | choosers.xml$ |
idv.resource.colorpairs | Color pairs | no pattern |
idv.resource.colortables | Color tables used in the application | colortables.xml$ |
idv.resource.controls | Display controls | controls.xml$ |
idv.resource.datasource | Specification of the data sources | datasource.xml$ |
idv.resource.derived | Derived quantities | derived.xml$ |
idv.resource.enduserformulas | Native formulas | enduserformulas.xml$ |
idv.resource.grib1lookuptables | Grib 1 Lookup tables | grib1lookuptable.lst$ |
idv.resource.grib2lookuptables | Grib 2 Lookup tables | grib2lookuptable.lst$ |
idv.resource.helptips | Help tips shown in the help tips dialog | helptips.xml$ |
idv.resource.imagedefaults | ADDE Image Defaults | imagedefaults.xml$ |
idv.resource.imagesets | Image Sets | imagesets.xml$ |
idv.resource.jython | Jython libraries | .py$ |
idv.resource.locations | Fixed station locations | locations.xml$ |
idv.resource.maps | Maps for the displays | maps.xml$ |
idv.resource.menubar | Commands in the menu bar | (defaultmenu.xml$|menubar.xml$) |
idv.resource.messages | Message catalog | messages.properties$ |
idv.resource.misccontrols | Controls for different display types | misccontrols.xml$ |
idv.resource.njConfig | Configuration files | njConfig.xml$ |
idv.resource.paramdefaults | Display defaults for data | paramdefaults.xml$ |
idv.resource.paramgroups | Parameter groups | paramgroups.xml$ |
idv.resource.plugins | Plugins | no pattern |
idv.resource.preferences | User preferences | no pattern |
idv.resource.projections | Map projections | projections.xml$ |
idv.resource.prototypes | Prototypes | no pattern |
idv.resource.skin | UI Skin | skin.xml$ |
idv.resource.staeprojections | Projections for USA states | stateprojections.xml$ |
idv.resource.stationmodels | Layout models | stationmodels.xml$ |
idv.resource.stationsymbols | Layout model symbols | stationsymbols.xml$ |
idv.resource.toolbar | Tool bar | toolbar.xml$ |
idv.resource.transects | Map transects | transects.xml$ |
idv.resource.translations | Hydrometeor classification value mapping | translations.xml$ |
idv.resource.urlmaps | Maps calls from old thredds server to another | urlmaps.xml$ |
idv.resource.userchooser | End user constructed data choosers | no pattern |
idv.resource.varrenamer | Maps one field name to another | varrenamer.xml$ |
idv.resource.viewpoints | Viewpoints | viewpoints.xml$ |