This section describes the PIMO meta-objects.
Processing in the PIMO is based on a series of transformations ordered by a set of maps. At the top of the map hierarchy is the BIA_MO_Tcpip_MapSubscriptions object.
Figure 26 is an example of what the BIA_MO_Tcpip_MapSubscriptions object looks like in the Business Object Designer.
The pertinent attributes of the example object are as follows:
MO Level Attributes | Description |
---|---|
Inbound | The set of maps used by PIMO in event mode processing. In Figure 26, three maps are used. |
+BIA_InputMessage_CheckComplete | Child attribute, which contains the map BIA_Map_InputMessage
_to_InputMessage. See Figure 29 for information about the requirements for BIA_InputMessage_CheckComplete. |
+BIA_InputMessage | Child attribute, which contains the map BIA_Map_InputMessage
_to_LLPMessageList, used to remove LLP headers and trailers from the main HL7 data. See Figure 28 for information about the requirements for BIA_InputMessage. |
+BIA_ApplicationMessage | Child attribute, which contains a map BIA_Map_InputMessage
_to_FinalMessage. See Figure 30 for information about the requirements for BIA_ApplicationMessage. |
Outbound | The set of maps used by PIMO in service call request processing. In Figure 26, two maps are used. |
+BIA_ApplicationMessage | Child attribute, which contains the map BIA_Map_ApplicationMessage
_to_InputMessage. See Figure 31 for information about the requirements for BIA_ApplicationMessage. |
+BIA_ResponseMessage | Child attribute, which contains the map BIA_Map_ResponseMessage_to_Final Message. See Figure 32 for information about the requirements for BIA_ResponseMessage. |
This section describes the attributes and ASI that are used in PIMO maps. A specific map instance--BIA_Map_InputMessage_to_LLPMessageList--is used as an example.
The pertinent attributes of the object are as follows:
Map BO Level Attributes | Description |
---|---|
Port | Each PIMO map has two ports: the IPort and the
OPort, defined in the example by the BIA_InputMessage_to
_LLPMessageList_Port. These indicate the expected type of the source object (in the example, a BIA_InputMessage) and the destination object (in the example, a BIA_LLPMessageList). |
Declaration | A PIMO map may include declaration objects containing
names for temporary variables to be used during processing. In the
example, the declaration object (a BIA_Map_InputMessage_to
_LLPMessageList_Declaration) contains one such name, "contentText" |
Action | Each PIMO map has at least one action object (here
a BIA_Map_InputMessage_to
_LLPMessageList) that stores information pointing to the actual class and method that does the processing |
The ASI contains the following information:
type=nativeStatic; class=com.ibm.adapters.tcpip.messagehandlers.LLPMessagingProtocoHandler; method=parseInputMessageToLLPMessages; target=contentText;IPort;Oport |
This section describes rules you should follow when using maps.
The following rules apply to all maps:
The following rules apply to the Inbound attribute:
For this map, the iPort has to be BIA_InputMessage. The oPort can be any business object with a Content attribute of type BIA_ContentBO.
For this map, the iPort has to be BIA_InputMessage. The oPort can be any business object with a Content attribute of type BIA_ContentBO.
For this map, the iPort has to be BIA_ApplicationMessage. The oPort can be any business object with a Content attribute of type BIA_ContentBO.
The following rules apply to the Outbound attribute:
For this map, the iPort has to be BIA_ApplicationMessage. The oPort can be any business object with a Content attribute of type BIA_ContentBO.
For this map, the iPort has to be BIA_ResponseMessage. The oPort can be any business object with a Content attribute of type BIA_ContentBO. Figure 32 shows the oPort as BIA_FinalMessage. The oPort should have other attributes, such as ResponseAttributeName, ResponseDataMimeType, Status, and Charset, as in BIA_FinalMessage.
In asynchronous request processing, you can bypass all maps by setting up BIA_MO_Tcpip_MapSubscriptions so that the Inbound and Outbound attributes are empty (without any children).