[Top] [Prev] [Next] [Bottom]

T_ROUTING CLASS

T_ROUTING CLASS

Overview

The T_ROUTING class represents configuration attributes of routing specifications for an application. These attribute values identify and characterize application data dependent routing criteria with respect to field names, buffer types, and routing definitions.

Attribute Table

T_ROUTING Class Definition Attribute Table

Attribute Type Permissions Values Default

TA_ROUTINGNAME( r )( * )

string

ru-r--r--

string[1...15]

N/A

TA_BUFTYPE( r )( * )

string

ru-r--r--

string[1...256]

N/A1

TA_FIELD( r )( k ) ( * )

string

ru-r--r--

string[1...30]

N/A1

TA_RANGES( r )

carray

rw-r--r--

carray[1...2048]

N/A

TA_STATE( k )

string

rw-r--r--

GET:"{VAL}"

SET:"{NEW|INV}"

N/A

N/A

( k ) - GET key field
( r ) - Required field for object creation (SET TA_STATE NEW)
( * ) - GET/SET key, one or more required for SET operations

1TA_BUFTYPE only applies to BEA TUXEDO data-dependent routing criteria. The specified u (uniqueness) permission applies only in the relevant case. That is: the combination of TA_ROUTINGNAME, TA_TYPE and TA_BUFTYPE must be unique for TA_TYPE=SERVICE.

The TA_TYPE attribute determines the permissible attributes for the TA_ROUTING object. TYPE=SERVICE corresponds to BEA TUXEDO data-dependent routing criteria. The default is SERVICE. SET operations are assumed to be for data-dependent routing if no TA_TYPE is specified.

Attribute Semantics

TA_ROUTINGNAME: string[1...15]
Routing criteria name.

TA_BUFTYPE: type1[:subtype1[,subtype2 . . . ]][;type2[:subtype3[, . . . ]]] . . .
List of types and subtypes of data buffers for which this routing entry is valid. A maximum of 32 type/subtype combinations are allowed. The types are restricted to be one of FML, VIEW, X_C_TYPE, or X_COMMON. No subtype can be specified for type FML, and subtypes are required for types VIEW, X_C_TYPE, and X_COMMON (\Q\Q*'' is not allowed). Note that subtype names should not contain semicolon, colon, comma, or asterisk characters. Duplicate type/subtype pairs can not be specified for the same routing criteria name; more than one routing entry can have the same criteria name as long as the type/subtype pairs are unique. If multiple buffer types are specified for a single routing entry, the data types of the routing field for each buffer type must be the same.

TA_FIELD: string[1...30]
When TA_TYPE=SERVICE this field is assumed to be an FML buffer or view field name that is identified in an FML field table (using the FLDTBLDIR and FIELDTBLS environment variables) or an FML view table (using the VIEWDIR and VIEWFILES environment variables), respectively. This information is used to get the associated field value for data dependent routing during the sending of a message.

TA_RANGES: carray[1...2048]
The ranges and associated server groups for the routing field. The format of string is a comma-separated, ordered list of range/group name pairs. A range/group name pair has the following format:

lower[-upper]:group

lower and upper are signed numeric values or character strings in single quotes. lower must be less than or equal to upper. To embed a single quote in a character string value, it must be preceded by two backslashes (for example, 'O\\'Brien'). The value MIN can be used to indicate the minimum value for the data type of the associated field on the machine. The value MAX can be used to indicate the maximum value for the data type of the associated field on the machine. Thus, "MIN--5" is all numbers less than or equal to -5, and "6-MAX" is all numbers greater than or equal to 6.

The meta-character \Q\Q*'' (wild-card) in the position of a range indicates any values not covered by the other ranges previously seen in the entry; only one wild-card range is allowed per entry and it should be last (ranges following it will be ignored).

The routing field can be of any data type supported in FML. A numeric routing field must have numeric range values, and a string routing field must have string range values.

String range values for string, carray, and character field types must be placed inside a pair of single quotes and can not be preceded by a sign. Short and long integer values are a string of digits, optionally preceded by a plus or minus sign. Floating point numbers are of the form accepted by the C compiler or atof(3): an optional sign, then a string of digits optionally containing a decimal point, then an optional e or E followed by an optional sign or space, followed by an integer.

The group name indicates the associated group to which the request is routed if the field matches the range. A group name of \Q\Q*'' indicates that the request can go to any group where a server offers the desired service.

Limitation: Attribute values greater than 256 bytes in length will disable interoperability with BEA TUXEDO Release 4.2.2 and earlier.

TA_STATE:

GET: {VALid}
A GET operation will retrieve configuration information for the selected T_ROUTING object(s). The following states indicate the meaning of a TA_STATE returned in response to a GET request. States not listed will not be returned.

VALid

T_ROUTING object is defined. Note that this is the only valid state for this class. Routing criteria are never ACTive; rather, they are associated through the configuration with service names and are acted upon at runtime to provide data dependent routing. This state is INActive equivalent for the purpose of permissions checking.

SET: {NEW|INValid}
A SET operation will update configuration information for the selected T_ROUTING object. The following states indicate the meaning of a TA_STATE set in a SET request. States not listed may not be set.

NEW

Create T_ROUTING object for application. State change allowed only when in the INValid state. Successful return leaves the object in the VALid state.

unset

Modify an existing T_ROUTING object. This combination is not allowed in the INValid state. Successful return leaves the object state unchanged.

INValid

Delete T_ROUTING object for application. State change allowed only when in the VALid state. Successful return leaves the object in the INValid state.

Limitations

None.



[Top] [Prev] [Next] [Bottom]