Correlation points available in the exits

Correlation points are available to tie the flow data available in the exits between the exits and between flows.

For all flows, the FlowType enumeration is available. The enumeration defines the type of flow and has methods to determine other key qualities about this flow. FlowTopology can be used to distinguish between Gateway daemon flows and flows in the Gateway classes, in both local and remote mode. There is no access to the underlying ECIRequest object from the exits.

Flow correlators

Individual flows through the Gateway daemon or Gateway classes have a CtgCorrelator. This correlator is a Java int, increments for each flow, available at all RequestEvents: RequestEntry to ResponseExit, and wrapped from Integer.MaxValue (values from -2,147,483,648 to 2,147,483,647). Each Gateway daemon or JavaGateway object uses independent correlators.

The Gateway daemon or Client application's JavaGateway object can be identified if the APPLID and APPLID Qualifier are defined and are available as CtgApplid and CtgApplidQualifier. These are Java Strings containing 1 to 8 characters. For details see the CICS Transaction Gateway Fully-qualified APPLID section.

In three tier (or remote mode) topologies, the CtgCorrelator, CtgApplid and CtgApplidQualifier of the Client application flow are available in the exits in the Gateway daemon as ClientCtgCorrelator, ClientCtgApplid and ClientCtgApplidQualifier respectively.

For IPIC transactions the origin data is available to associate the flow from a Java application through to a CICS region.

For EXCI synconreturn flows from the Gateway daemon the CtgCorrelator, CtgApplid and CtgApplidQualifier is passed to CICS as a LU6.2 style UOWID. The format of this is a byte array.

CICS Network UOWID is a byte array used by CICS to uniquely identify a unit of work. The encoding is binary for the integers and EBCDIC for the characters. The format is shown in the following table.
Table 1. Format of CICS Network UOWID
Offset Length Description
0 1 Length of UOWID
1 1 Length of Network ID
2 n = 3 to 17 Network ID
2 q = 1 to 8 Network qualifier
2+q 1 Dot = "."
3+q u = 1 to 8 UOWID
3+q+u 6 Instance integer
3+q+u 4 CICS Transaction Gateway Correlator
7+q+u 2 0
9+q+u 2 Sync point count (set to 0)

Access to any user correlation data in the COMMAREA is through the PayLoad object, which is read only, and only available during the eventFired() method.

Transaction correlators

For XA transactions, the XID is available, and for EXCI transactions, where the XID is unknown to CICS, the RRMS URID is also available as the Urid object.

For extended mode ECI transactions the LUW token is available after it has been set. For example, on all exits except the RequestEntry of the first request of the transaction.