File Formats, Data Descriptions, MIBs, and System Processes Reference
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.
(k)— |
TA_BUFTYPE
applies only to ATMI data-dependent routing criteria. TA_FIELDTYPE
applies only to CORBA factory-based 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
, and TA_ROUTINGNAME
, TA_TYPE
and TA_FIELD
must be unique for TA_TYPE=FACTORY
.TA_TYPE
attribute determines the permissible attributes for the TA_ROUTING
object. TYPE=SERVICE
corresponds to ATMI data-dependent routing criteria. TYPE=FACTORY
corresponds to CORBA factory-based routing. The default is SERVICE
. SET
operations are assumed to be for data-dependent routing if no TA_TYPE
is specified. Specification of TA_FIELDTYPE
is invalid for data-dependent routing. Specification of TA_BUFTYPE
is invalid for factory-based routing.Specifies the routing type. The default is TYPE=SERVICE
to ensure that existing UBBCONFIG
files used in ATMI environments continue to work properly. Use TYPE=FACTORY
if you are implementing factory-based routing for a CORBA interface.
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 the following: FML
, FML32
, XML
, VIEW
, VIEW32
, X_C_TYPE
, and X_COMMON
. No subtype can be specified for types FML
, FML32
, or XML
; subtypes are required for types VIEW
, VIEW32
, X_C_TYPE
, and X_COMMON
("*" is not allowed). Note that subtype names should not contain semicolon, colon, comma, or asterisk characters. Duplicate type/subtype pairs cannot 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.
The routing field name. When TA_TYPE
=FACTORY
, this is assumed to be a field that is specified in an NVList
parameter to PortableServer::POA::create _reference_with_criteria for an interface that has this factory routing criteria associated with it. See section on factory-based routing for more details.
When TA_TYPE=SERVICE
, the TA_FIELD
field is assumed to be an FML or FML32 buffer, XML buffer, view field name that is identified in an FML field table (using the environment variables FLDTBLDIR
and FIELDTBLS
or FLDTBLDIR32
and FIELDTBLS32
), or an FML view table (using the environment variables VIEWDIR
and VIEWFILES
or VIEWDIR32
and VIEWFILES32
), respectively. This information is used to get the associated field value for data-dependent routing while sending a message.
For an XML
buffer type, TA_FIELD
contains either: a routing element type (or name) or a routing element attribute name.
The syntax of the TA_FIELD
attribute for an XML
buffer type is as follows:
"root_element
[/child_element
][/child_element
][/. . .][/@attribute_name
]"
The element is assumed to be an XML document or datagram element type. Indexing is not supported. Therefore, the BEA Tuxedo system recognizes only the first occurrence of a given element type when processing an XML
buffer for data-dependent routing. This information is used to get the associated element content for data-dependent routing while sending a message. The content must be a string encoded in UTF-8.
The attribute is assumed to be an XML document or datagram attribute of the defined element. This information is used to get the associated attribute value for data-dependent routing while sending a message. The value must be a string encoded in UTF-8.
The combination of element name and attribute name may contain up to 30 characters.
The type of the routing field can be specified by the TA_FIELDTYPE
attribute.
TA_FIELDTYPE
: "
{char
| short
| long
| float
| double
| string
}"
The type of the routing field specified in the TA_FIELD
attribute. The type can be char
, short
, long
, float
, double
, or string
; only one type is allowed. This attribute is used only for routing XML buffers. The default type of the routing field is string
.
Routing field type. This field is only valid if TA_TYPE=FACTORY
. Valid types are: SHORT
, LONG
, FLOAT
, DOUBLE
, CHAR
, STRING
. Specification of this attribute is only valid for factory-based routing criteria.
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
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 "*
" (wildcard) in the position of a range indicates any values not covered by the other ranges previously seen in the entry; only one wildcard 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 cannot 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 "*
" 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.
A GET
operation will retrieve configuration information for the selected T_ROUTING
object(s). The following state indicates the meaning of a TA_STATE
returned in response to a GET
request. States not listed will not be returned.
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.
Routing criteria type. Valid values are "FACTORY
" or "SERVICE
". "FACTORY
" specifies that the routing criteria applies to factory-based routing for a CORBA interface. The specification of TYPE=FACTORY
is mandatory for a factory-based routing criteria. "SERVICE
" specifies that the routing criteria applies to data-dependent routing for an ATMI service. Default is "SERVICE
". Specification of this attribute is optional for data-dependent routing criteria. Note that the type specified affects the validity and possible values for other fields defined for this MIB class. These are noted for each field. TA_TYPE
is required for SET
operations for factory-based routing criteria.