The test input messages in the Simplified Database Routing sample are provided in the form of Test Client files. The test messages are put to an IN queue and are retrieved by the message flow. When the test messages are processed by the SimplifiedDBRouting message flow, output messages are put to either one or two OUT queues. The test messages generate output messages on either one or two OUT queues.
The following table shows which queues are used by the SimplifiedDBRouting message flow based on the provided input message.
Test Client message used | Queues | How the message flow interacts with the queues |
---|---|---|
bypassdbretrievenode.mbtest | SIMPLERROUTEDB_IN | The input queue from which the message flow gets the input message. |
SIMPLERROUTEDB_SNRSTAFF | The DatabaseRoute node puts the unmodified input message onto this output queue because filter expression ($Body/EmpRecord/AgeInYears > $M_AGEINYRS) and ($M_LASTNM = 'KWAN') is satisfied by the content of the input message. | |
SIMPLERROUTEDB_ORDERCLOCK | The DatabaseRoute node puts the unmodified input message onto this output queue because filter expression $Body/EmpRecord/YrsInService >= 10 is satisfied by the content of the Test Client message. | |
SIMPLERROUTEDB_FAILURE | An unmodified input message is put onto this queue when a failure in processing occurs in the message flow. | |
bypassdbretrievenode_keynotfound.mbtest | SIMPLERROUTEDB_IN | The input queue from which the message flow gets the input message. |
SIMPLERROUTEDB_KEYNOTFOUND | The DatabaseRoute node puts the unmodified input message onto this output queue, which indicates that the executed select database statement failed to find a match for the provided search key that is used in the query. In this sample the key that is used is the work department number, which is provided in the original Test Client message and used as a parameter to complete the query statement. For this Test Client message the provided work department value of E00 does not exist as a value for any DEPTNUM column in any row within the DEPARTMENT table in the SROUTEDB database. As a result, the query returns a empty result set and sends the message down the keyNotFound terminal of the DatabaseRoute node. | |
SIMPLERROUTEDB_FAILURE | An unmodified input message is put onto this queue when a failure in processing occurs in the message flow. | |
usedbretrievenode.mbtest | SIMPLERROUTEDB_IN | The input queue from which the message flow gets the input message. |
SIMPLERROUTEDB_SNRSTAFF | The DatabaseRoute node puts the modified input message onto this output queue, because filter expression ($Body/EmpRecord/AgeInYears > $M_AGEINYRS) and ($M_LASTNM = 'KWAN') is satisfied by the modified content of the Test Client message. | |
SIMPLERROUTEDB_ORDERCLOCK | The DatabaseRoute node puts the modified input message onto this output queue, because filter expression $Body/EmpRecord/YrsInService >= 10 is satisfied by the modified content of this Test Client message. | |
SIMPLERROUTEDB_FAILURE | An unmodified input message is put onto this queue when a failure in processing occurs in the message flow. | |
usedbretrievenode_nofiltermatch.mbtest | SIMPLERROUTEDB_IN | The input queue that the message flow gets the input message from. |
SIMPLERROUTEDB_DEFAULT | The DatabaseRoute node puts the modified input message onto this output queue, because neither of the node's filter expressions are satisfied by the content of the modified Test Client message. Note: Manager Sally Kwan cannot be older than herself and hasn't got ten years service with the company. | |
SIMPLERROUTEDB_FAILURE | A modified input message is put onto this queue when a failure in processing occurs in the message flow. |