Configuring IPM

The TIBCO Rendezvous daemon process (rvd) accepts several command line parameters. When IPM brings the daemon within an application program, it accepts a subset of those parameters (see rvd in TIBCO Rendezvous Administration). You can configure those parameters in four ways.

Default Values (most convenient)
Implicit Configuration File from Path
Explicit Configuration File
Explicit Configuration Parameters in Code

Default Values

The most convenient way to use IPM is with the default parameter values.

When using the default parameter values, it is not necessary to modify program code at all; that is, you can use IPM merely by linking the appropriate library.

Implicit Configuration File from Path

You can configure parameter values in the configuration file tibrvipm.cfg. If this file is in the runtime path, then IPM reads parameter values from it.

For an example configuration file, see TIBCO_HOME/examples/IPM/tibrvipm.cfg.

Explicit Configuration File

You can explicitly supply a configuration filename to the open call that starts the Rendezvous internal machinery. If the program specifies this file, then IPM reads parameter values from it (overriding any configuration file in the runtime path).

For an example configuration file, see TIBCO_HOME/examples/IPM/tibrvipm.cfg.

Explicit Configuration Parameters in Code

You can explicitly set parameter values in application program code. Use the setRVParameters call before the open call that starts the TIBCO Rendezvous machinery.

Parameter Configuration—Precedence and Interaction

Straightforward semantics result from using only one method to set configuration parameters. This section describes the complex interactions that could occur if you set parameters more than once in the same program.

Modifying the Default Values

Each setRVParameters call starts with a clean slate of default parameter values, and then modifies individual values as defined by its arguments.

An open call with an explicit filename starts with a clean slate of default parameter values, and then modifies individual values as defined in the configuration file.

An open call without a filename freezes the existing parameter values that were set by the most recent setRVParameters call. However, if the program did not previously call setRVParameters, then an open call without a filename starts with a clean slate of default parameter values, and modifies individual values as defined in an implicit configuration file (if it finds one in the runtime path).

Freezing Parameter Values

When the first open call returns, it freezes the parameter values (until the process exits). Subsequent open calls and setRVParameters calls do not modify parameter values after they have been frozen.

A setRVParameters call sets values, but does not freeze them.

If a program contains several setRVParameters calls, then the last such call determines the actual parameter values. Each call starts with a clean slate of default values, and modifies overwrites them with its argument values. When the program subsequently calls open without a filename, that call freezes the parameter values set by the final setRVParameters call.

However, if a program contains several setRVParameters calls, followed by an open call that supplies a filename, then that open call (that is, the configuration file) determines the actual parameter values.