Throughout StreamBase in EventFlow programs, there is a single concept of a parameter,
and a single ${param}
syntax to resolve parameters to
their values. Parameters can be declared at various points in an application or
configuration file, each having different scope and order of precedence. In general,
there are two categories of parameters:
The following provides an overview of the ways parameters are used in StreamBase. See the linked pages for each parameter category for further details.
Module parameters are declared at the module level, and their scope is the containing module. In EventFlow programs, declare module parameters in the Parameters tab of the EventFlow Editor. You can reference module parameters in expressions in any operator or adapter in the containing module. You can set values for module parameters in a number of ways. Module parameters are evaluated at module load time, when the container holding the module is started by its hosting StreamBase Server.
If a module parameter is declared with a default value, and you do not specify a value at runtime with any of the available methods, then the module is run using the default value for that parameter. If you do not declare a default value, the containing module does not pass typechecking.
Global parameters are declared in the
operatorParameters
element of the server configuration
file. They have global scope for all modules in all containers running on the
StreamBase Server instance configured by that file, and can be referenced in any
expression in any module running on the server. You set initial values for global
parameters in the same operatorParameter
element that
declares them. Global parameters are initialized at server start time when the server
configuration file is read.
Like most globally-set values, global parameters can complicate application debugging. For the majority of use cases, TIBCO recommends using module parameters over global parameters.
You can narrow the focus of an operatorParameter
element
by specifying a qualified path in StreamBase path notation to an individual operator.