...
Due to the various formats of incoming data, the system does not provide any hardcoded formatting rules. Instead, it provides the Ultra subsystem where nearly any format may be defined and handled using the Ultra Format Definition Language (UFDL). Such definitions will automatically compile into classes, implementing the DRUDR
interface. In addition, the DTK provides the possibility of coding such classes directly in Java.
...
DRUDR
UDR related classes are located in the package com.digitalroute.devkit.drudr.
...
By implementing method names prefixed with the get_
and/or set_
keywords, the UDR subsystem uses Java reflection mechanisms to obtain information about available fields, such as their access type and data type. DRUDR
s contain a list of possible error codes that may be useful if UDRs are routed to ECS. Error codes may be added using addErrorCode
, examined via getErrorCodes
and removed by clearErrors
. Finally, a description of the UDR Type and its fields may be obtained using getDRUDRDesc
.
Info | ||||||
---|---|---|---|---|---|---|
Example - Creating a UDRA UDR is created to contain the three fields:
The above UDR class can be instantiated and used as follows from DTK code:
or used as follows in APL code:
|
...
To be able to support type validation and automatic code generation, MediationZone implements a type description system that is separate from standard Java class handling. The base class for all type descriptions is DRUDRType
, and various UDR types are described by subclasses of DRUDRDesc
.
The following table lists the available types, their type descriptions and the runtime implementation classes.
Type | Type Description | Java Object Type |
---|---|---|
any |
| Object |
bigint |
| BigInteger |
bitset |
| DRBitSet |
boolean |
| Boolean |
byte |
| byte |
bytearray |
| byte[] |
char |
| char |
date |
| DRDate |
float | DRUDRType.PT_FLOAT() | float |
double |
| double |
int |
| int |
ipaddress |
| DRIPAddress |
long |
| long |
short |
| short |
string |
| String |
table |
| DRTable |
list type |
| DRList |
map type |
| Map |
General UDR type |
| DRUDR subtype |
DevKit UDR type | DRUDRClassDesc | DRAbstractUDR subclass |
Scroll pagebreak |
---|