By default the IDV looks in three places for the resources it uses to configure itself:
idv.properties = %SITEPATH%/idv.properties;%USERPATH%/idv.properties;You can also specify one or more properties files as command line arguments:
-properties your_properties_fileThe IDV processes these properties files in order, with properties defined in later files overriding those defined previously.
Once the properties have been processed the IDV initializes its resources by reading in one or more resource definition files. We call these files "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%/idv.rbi;%SITEPATH%/idv.rbi;%IDVPATH%/idv.rbiWhen you first run the IDV, the application, as a thoughtful convenience, writes out an example RBI file into your local .unidata/idv/DefaultIdv directory. This example file has documentation that describes how to add in new resources.
These RBI files define the location of different collections of resources. For example, from the system RBI file, idv.rbi, we have the entry that defines where the IDV can find the XML files that define the color tables:
<resources name="idv.resource.colortables"> <resource location="%USERPATH%/colortables.xml"/> <resource location="%SITEPATH%/colortables.xml"/> <resource location="%IDVPATH%/colortables.xml"/> </resources>This says to look for colortables in the user path, sitepath and IDV system path. The IDV uses the first entry in this list as the file path to write out color tables that are created using the color table editor.
Note: as a further complexity, errr, convenience, if there is a property defined in the properties file which is the resource name than the IDV just uses the value of the property (it treats it as a semi-colon delimited list of paths) as the resources and ignores the resources in the RBI file. So, for example, if you had a property:
idv.resource.colortables=%USERPATH%/colortables.xml;http://yourwebsite.edu/specialtables.xmlthen the IDV would only load in these colortables.
Using the RBI file, what are the set of steps you need to take to configure your site to use a set of special color tables that you have created. What you would do is bring up the IDV. Create the color tables. They would get saved off in your local .unidata/idv/DefaultIdv directory in the file colortables.xml (as defined by the resource paths defined in the default RBI). You could simply copy that file to an area on your web site or on a shared file system that is pointed to by the IDV sitepath. Now, your users simply need to define the sitepath and they will naturally pick up the color tables you have created.
Most site configuration can be accomplished through the default user/site/system resource locations. However, you can modify the RBI file to include other resources. For example, you could add in an entry:
<resource location="http://yourwebsite.edu/specialcolortables.xml"/>to make available some special color tables at a particular URL.
Resource Identifier | Description | File Pattern |
idv.resource.colortables | Color tables used in the application | colortables.xml$ |
idv.resource.projections | Map projections | projections.xml$ |
idv.resource.transects | Map transects | transects.xml$ |
idv.resource.messages | Message catalog | messages.properties$ |
idv.resource.grib1lookuptables | Grib 1 Lookup tables | grib1lookuptable.lst$ |
idv.resource.grib2lookuptables | Grib 2 Lookup tables | grib2lookuptable.lst$ |
idv.resource.jython | Jython libraries | .py$ |
idv.resource.stationmodels | Station models | stationmodels.xml$ |
idv.resource.imagedefaults | ADDE Image Defaults | imagedefaults.xml$ |
idv.resource.backgroundwms | Background WMS images | backgroundwms.xml$ |
idv.resource.imagesets | Image Sets | imagesets.xml$ |
idv.resource.autodisplays | Automatic display creation | autodisplays.xml$ |
idv.resource.skin | UI Skin | skin.xml$ |
idv.resource.toolbar | Tool bar | toolbar.xml$ |
idv.resource.actions | Actions | actions.xml$ |
idv.resource.stationsymbols | Station model symbols | stationsymbols.xml$ |
idv.resource.colorpairs | Color pairs | no pattern |
idv.resource.bundlexml | Bundle xml | no pattern |
idv.resource.aliases | Data aliases | aliases.xml$ |
idv.resource.datasource | Specification of the data sources | datasource.xml$ |
idv.resource.derived | Derived quantities | derived.xml$ |
idv.resource.choosers | The definition of the user interface for data choosers | choosers.xml$ |
idv.resource.bundles | Default bundles that are evaluated at start up | no pattern |
idv.resource.controls | Display controls | controls.xml$ |
idv.resource.helptips | Help tips shown in the help tips dialog | helptips.xml$ |
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.paramdefaults | Display defaults for data | paramdefaults.xml$ |
idv.resource.paramgroups | Parameter groups | paramgroups.xml$ |
idv.resource.userchooser | End user constructed data choosers | no pattern |
idv.resource.preferences | User preferences | no pattern |
idv.resource.plugins | Plugins | no pattern |
idv.resource.prototypes | Prototypes | no pattern |