Send-only programming model
Use the send-only programming model to run an IMS non-response mode transaction in the IMS Transaction Manager (IMS TM).
To run a non-response mode transaction in IMS TM, a Java™ application executes a SYNC_SEND interaction. In a SYNC_SEND interaction, the IMS TM resource adapter sends the request to IMS through IMS Connect and does not expect a response from IMS. Because the IMS TM 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 interaction 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 that is used by the execute method. The SYNC_SEND interaction processing varies, depending on the type of persistent socket that is used (shareable or dedicated) and the type of IMS transaction that is run.
Shareable persistent socket processing model
- Non-response mode transaction
The IMS application program associated with a transaction that is defined to IMS as non-response mode typically does not insert an output message to the I/O PCB. Therefore, an output message is not created and nothing is queued on a tpipe.
- Response mode transaction
The IMS application program associated with a transaction that is defined to IMS as a response mode transaction typically inserts an output message to the I/O PCB. Because the IMS TM 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 client ID. However, interactions SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_NOWAIT or SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_WAIT can be used to retrieve the response, if they are performed following the SYNC_SEND interaction in the same application and on the same connection.
- Non-response mode or response mode transactions that invoke an IMS application program that inserts a message to an alternate PCB
A message that is inserted to an alternate PCB can be retrieved by executing an interaction on a dedicated persistent socket connection. To insert this message, see the discussion on retrieving asynchronous output on dedicated persistent socket connections in the "Asynchronous output programming model" topic.
Dedicated persistent socket processing model
- Non-response mode transaction
The IMS application program associated with a transaction that is defined to IMS as non-response mode typically does not insert an output message to the I/O PCB. Therefore, an output message is not created and nothing is queued on a tpipe.
- Response mode transaction
The IMS application program associated with a transaction that is defined to IMS as response mode typically inserts an output message to the I/O PCB. Because the IMS TM 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 that is provided for the client ID of the interaction. Messages queued to this type of tpipe can be retrieved by issuing a SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_NOWAIT or SYNC_RECEIVE_ASYNCOUTPUT_SINGLE_WAIT interactions. The tpipe name is the client ID that is specified for the SYNC_SEND interaction. A client ID 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. For more information, see the "Asynchronous output programming model" topic.