SYNC_SEND programming model

If your Java™ client application issues a SYNC_SEND interaction, the IMS resource adapter sends the request to IMS™ through IMS Connect and does not expect a response from IMS. Because the IMS resource adapter performs a "send only" interaction with IMS, a SYNC_SEND interaction is typically used with a non-response mode transaction.

To use a SYNC_SEND interation to run a transaction, your application must provide a value of SYNC_SEND for the interactionVerb property and a value of 0 for the commitMode property of the IMSInteractionSpec object used by the execute method. SYNC_SEND interaction processing varies depending on the type of pesistent socket used (shareable or dedicated) and the type of IMS transaction that is run.

Shareable persistent socket processing model

The following scenarios describe SYNC_SEND interactions on a shareable persistent socket connection for non-response and response mode transactions. Commit mode 0 is required.
  • Non-response mode transaction

    An IMS application program associated with a transaction defined to IMS as non-response mode typically does not require an output message to the I/O PCB, therefore no output message is created and nothing is queued on the TPIPE.

  • Response mode transaction

    The IMS application program associated with a transaction defined to IMS as response mode typically will insert an output message to the I/O PCB. Because the IMS resource adapter does not expect a response from a SYNC_SEND interaction, the output message, if inserted, is queued on the TPIPE with the name of the generated clientID. However, messages queued to this type of TPIPE cannot be retrieved and TPIPE overflow may occur. For this reason, SYNC_SEND interactions are strongly not recommended for response mode transactions on a shareable persistent socket.

Dedicated persistent socket processing model

The following scenarios describe a SYNC_SEND interaction on a dedicated persistent socket connection for different types of transactions. SYNC_SEND interactions use commitMode0 and dedicated persistent socket connections can only be used for commitMode 0 interactions.
  • Non-response mode transaction

    The IMS application program associated with a transaction defined to IMS as non-response mode typically does not insert an output message to the I/O PCB, therefore no output message is created and nothing is queued on a TPIPE.

  • Response mode transaction

    The IMS application program associated with a transaction defined to IMS as response mode typically will insert an output message to the I/O PCB. Because the IMS resource adapter does not expect a response from a SYNC_SEND interaction, the output message, if inserted, is queued on the TPIPE with the name provided for the clientID of the interaction. Messages queued to this type of TPIPE can be retrieved by issuing a SYNC_RECEIVE_ASYNCOUTPUT interaction. The TPIPE name is the clientID specified for the SYNC_SEND interaction. clientID is required for interactions that use a dedicated persistent socket connection.

  • Non-response mode or response mode transactions that invoke an IMS application that inserts to an alternate PCB
    A message inserted to an alternate PCB can be retrieved by executing an interaction on a dedicated persistent socket connection. This can be done by the following ways:
    1. Ensuring that the connectionFactory used by the interaction is configured with a value of TRUE for the CM0Dedicated property.
    2. Providing the following values for the interaction:
      • IMSInteractionSpec property interactionVerb=SYNC_RECEIVE_ASYNCOUTPUT
      • IMSInteractionSpec property commitMode=0
      • IMSConnectionSpec property clientID= the name of the alternate PCB
Related concepts
Overview of commit mode processing
SYNC_SEND_RECEIVE programming model
Retrieving asynchronous output
Related tasks
Displaying output message counts
Terms of use | Feedback
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.