Reply processing patterns for Aggregate connector — persistent / nonpersistent

Upon each server adapter completing normally, any application response and reply data is written to a server adapter output data container and control is returned to the Adapter Navigator.

DPL and WebSphere MQ server adapter status information is written to a status container COMMAND.STATUS.

FEPI and Link3270 server adapter status information is written to a status container NAVIGATOR.STATUS.

The Adapter Navigator will perform the following processing steps each time a server adapter completes:
  1. Performs a check on the server adapter activity completion status by issuing the BTS CHECK ACTIVITY command:
    EXEC CICS CHECK ACTIVITY (NSC-CHILD-ACTIVITY) 
                  COMPSTATUS (CICS-COMPSTATUS) 
                      ABCODE (CICS-ABCODE) 
                   ABPROGRAM (CICS-ABPROGRAM) 
                        MODE (CICS-MODE) 
                  SUSPSTATUS (CICS-SUSPSTATUS) 
                        RESP (CICS-RESP) 
                       RESP2 (CICS-RESP2) 
    END-EXEC.
    The value of variable NSC-CHILD-ACTIVITY of the ACTIVITY option is equal to the server adapter program name run.
  2. Reads the adapter state information from process container ADAPTER.PROCESS
  3. Reads the appropriate server adapter status information from either container NAVIGATOR.STATUS or COMMAND.STATUS depending upon server adapter type.
  4. Reads the appropriate server adapter output container, if normal completion, from one of the following containers depending, again, upon the server adapter type.
    • COMMAND.OUTPUT
    • FEPI.OUTPUT
    • LINK3270.OUTPUT
The Adapter Navigator determines if normal processing of the Adapter service is complete. If so, the Adapter Navigator will perform the following reply processing steps:
  1. Writes output data container containing the application response/reply data to it's output container ADAPTER.OUTPUT.
  2. Writes adapter service completion status and state information to it's status container ADAPTER.STATUS
  3. Issues an EXEC CICS® RETURN ENDACTIVITY command returning control to the Navigation Manager (DFHMAMGR) root activity thus completing Adapter service processing.

Once all server adapters that constitute the Adapter service have completed processing and the Adapter Navigator activity has ended normally, a BTS completion event is fired and control is returned to the Navigation Manager (DFHMAMGR).

The Navigation Manager will perform the following reply processing steps:
  1. Performs a check on the Adapter Navigator activity completion status by issuing the BTS CHECK ACTIVITY command:
    EXEC CICS CHECK ACTIVITY (ADC-NAV-ACTIVITY) 
                  COMPSTATUS (CICS-COMPSTATUS) 
                      ABCODE (CICS-ABCODE) 
                   ABPROGRAM (CICS-ABPROGRAM) 
                        MODE (CICS-MODE) 
                  SUSPSTATUS (CICS-SUSPSTATUS) 
                        RESP (CICS-RESP) 
                       RESP2 (CICS-RESP2) 
    END-EXEC. 
  2. Reads the state information from process container ADAPTER.PROCESS.
  3. Reads the Adapter service status information from container ADAPTER.STATUS.
  4. Reads the Adapter service output container, if normal completion, from container ADAPTER.OUTPUT.
  5. Writes the root activity output data container containing the application response and reply data. The output container name is also ADAPTER.OUTPUT.
  6. Writes adapter completion status and state information to process container ADAPTER.PROCESS.
  7. Optionally issues MQPUT if BTS process was executed in asynchronous mode and the client application interface was WebSphere MQ-CICS bridge. Otherwise, the Navigation Manager (DFHMAMGR) issues an EXEC CICS RETURN ENDACTIVITY command returning control to the DPL Stub program (DFHMADPL) and completing the process.
Figure 1. CICS Service Flow Runtime Navigation Manager program reply processing — aggregate connector type
The diagram illustrates the reply processing performed by the Navigation Manager (DFHMAMGR) program for an Adapter service of the aggregate connector type.
Once the Navigation Manager (DFHMAMGR) has completed processing and the BTS process has ended normally, a BTS completion event is fired and control is returned to the DPL Stub program (DFHMADPL). The DPL stub will perform the following processing steps:
  1. Performs a check on the process completion status by issuing the BTS CHECK ACQPROCESS command
  2. Reads the state information from process container ADAPTER.PROCESS.
  3. Reads the Navigation Manager output data container ADAPTER.OUTPUT.
  4. Builds XML or fixed format reply message to include the header structure (DFHMAH) and any output data container application response/reply data.
    Note: The DPL Stub program (DFHMADPL) can call a user-defined program to convert the COBOL fixed format outbound application reply structure to XML application reply tag data. The application program name is determined by the Adapter service.

    The DPL Stub program will then call the COBOL to XML Converter program (DFHMAXMO) to convert the COBOL fixed format header structure (DFHMAH) to XML header tag data to format the XML reply message. See Request properties for further information.

    See XML request and response processing and XML message formats for non-passthrough for further information regarding XML message processing.

    Note: The Navigation Manager program (DFHMAMGR) also performs XML reply message processing as described above when the Adapter service is run in asynchronous mode and the client application interface was WebSphere MQ-CICS bridge.
  5. Moves outbound reply message to DFHCOMMAREA and issues an EXEC CICS RETURN command returning control to the service requestor.
Figure 2. CICS Service Flow Runtime DPL Stub program reply processing — aggregate connector type
The diagram illustrates the reply processing performed by the DPL Stub (DFHMADPL) program for an Adapter service of the aggregate connector type.