Understanding Message Classes

You can create the following types of messages using PeopleSoft Pure Internet Architecture::

  • Rowset-based messages, which use record definitions to create a hierarchical structure for the data. These are generally used for data from applications, pages, components, and so on.

  • Nonrowset-based messages, which do not use record definitions. These messages can have virtually any content or structure.

  • Container messages, which are messages made up of one or more part messages.

Use the PeopleCode message classes to instantiate message objects based on existing message definitions, as well as to populate the objects with data and manipulate the data. You can also use PeopleCode to publish a message.

Rowset-based messages are built on top of the rowset, row, record, and field classes, so the PeopleCode written to populate or access those types of messages looks similar to PeopleCode written to populate or access the component buffer.

Nonrowset-based messages contain XML data, and can be accessed using the XmlDoc class methods and properties.

Container messages contain parts. Each part is a separate message. A container message can contain either all rowset-based messages, or all nonrowset-based messages.

Message definitions only define the shape of the data contained in a message. A message definition doesn't contain any other type of information, such as if the message is being used synchronously or if it's a response message.

After you create a message definition, you can use it in or more service operations. The service operation contains all the information about how the message is to be used, the routing, the queue if appropriate, and so on.

At least one handler is defined with every service operation. Handlers define additional programming to be used with processing the message associated with the service operation. The handlers can be thought of as corresponding to pre PeopleSoft 8.48 message events.

The PeopleCode for the various handlers is contained in the Integration Broker application classes.

The Integration Broker application classes house the processing logic for asynchronous and synchronous messages. By implementing the Integration Broker application classes, you can reuse code more easily and access the other benefits of using application classes.

The following application classes are defined for Integration Broker. To access these application classes, in PeopleTools Application Designer, open the PS_PT application package, then open the Integration subpackage.

All of the Integration Broker application classes are defined as interfaces. This means that there is no native implementation of them: you must import them to your program and implement them if you want to use them.

Application Class

Methods Contained in Application Class

Comments

INotificationHandler

OnNotify

OnError

This interface is the equivalent of the Subscription event in releases prior to PeopleTools 8.48.

IPrePostNotification

OnPreNotify

OnPostNotify

OnError

This interface provides pre-processing and post-processing of segmented messages.

IReceiver

OnAckReceive

OnError

This interface is the equivalent of the OnAckReceive Message event in releases prior to PeopleTools 8.48.

IRequestHandler

OnRequest

OnError

This interface is the equivalent of the OnRequest Message event in releases prior to PeopleTools 8.48.

IRouter

OnRouteSend

OnRouteReceive

OnError

This interface is the equivalent of the OnRouteSend and OnRouteReceive Message events in releases prior to PeopleTools 8.48.

ISend

OnRequestSend

OnError

This interface is the equivalent of the OnSend Message event in releases prior to PeopleTools 8.48.