The connector allows WebSphere business processes to asynchronously exchange business objects with applications that issue or receive healthcare (HL7/NCPDP) data protocol messages when changes to data occur.
As shown in Figure 1, the connector interacts with several components whose collective purpose is to bridge the world of WebSphere business objects with that of healthcare messages.
Figure 1. Healthcare data handler
architecture
The healthcare environment is made up of various components that are described below.
The connector for healthcare is meta-data-driven. Message routing and format conversion are initiated by an event polling technique. The connector retrieves WebSphere MQ messages from queues, calls the healthcare data handler to convert messages to their corresponding business objects, and then delivers the objects to the corresponding business processes. In the opposite direction, the connector receives business objects from the integration broker, converts them into healthcare messages using the same data handler, and then delivers the messages to an WebSphere MQ queue.
The type of business object and verb used in processing a message are based on the meta-data in the Format field of the WebSphere MQ message header. You construct a meta-object to store the business object name and verb to associate with the WebSphere MQ message header Format field text.
You can optionally construct a dynamic meta-object that is added as a child to the business object passed to the connector. The child meta-object values override those specified in the static meta-object that is specified for the connector as a whole. If the child meta-object is not defined or does not define a required conversion property, the connector, by default, examines the static meta-object for the value. You can specify one or more dynamic child meta-objects instead of, or to supplement, a single static connector meta-object.
The connector can poll multiple input queues, polling each in a round-robin manner and retrieving a configurable number of messages from each queue. For each message retrieved during polling, the connector adds a dynamic child meta-object (if specified in the business object). The child meta-object values can direct the connector to populate attributes with the format of the message as well as with the name of the input queue from which the message was retrieved.
When a message is retrieved from the input queue, the connector looks up the business object name associated with the FORMAT text field. The message, along with the business object name, is then passed to the data handler. If a business object is successfully populated with message content, the connector checks to see if it a collaboration subscribes to it, and then delivers it to the integration broker using the gotApplEvents() method.
The connector calls the heathcare data handler to convert business objects into HL7/NCPDP messages and vice versa.
The connector for the Healthcare data handler uses an MQ implementation of the JavaTM Message Service (JMS), an API for accessing enterprise-messaging systems. This makes possible interaction with incoming and outgoing WebSphere MQ event queues.
The WebSphere MQ event queues exchange messages with the WebSphere MQ Interface. The software integrates WebSphere MQ messaging capabilities with HL7/NCPDP message types, performing delivery, acknowledgement, queue management, timestamping, and other functions.