Application A does some local work in the transaction. Application A requests application B to do some work within the same transaction. Application B requests TIP transaction manager B to pull this transaction. The TIP subordinate transaction manager (section ) of TIP transaction manager B sends a TIP command to the TIP superior transaction manager facet (section ) of TIP transaction manager A, passing in parameters tidA and tidB (its local identifier for the transaction). TIP transaction manager A agrees by responding with the PULLED TIP command. At this point, TIP transaction manager B has an enlistment in the transaction, and the transaction is bound to the TIP connection. TIP transaction manager B returns to application B. Application B does the requested work using the pulled transaction. Pushing a Transaction In this scenario, application A requests its transaction manager A to push a transaction to TIP transaction manager B, and then sends a request to application B to do some work as a part of the pushed transaction. The following figure illustrates the scenario (TIP protocol messages are illustrated with dashed arrows). Figure : Pushing a transaction Application A requests the TIP transaction manager communicating with an application facet (section ) of TIP transaction manager A to create a transaction by sending the BEGIN TIP command. TIP transaction manager communicating with an application facet replies with a TIP command, passing in the identifier of the transaction (tidA) created by TIP transaction manager A. Application A does some local work in the transaction. Application A asks its TIP transaction manager A to push the transaction to TIP transaction manager B. The TIP superior transaction manager (section ) of TIP transaction manager A sends a TIP command to the TIP subordinate transaction manager facet of TIP transaction manager B, passing as a parameter tidA. The TIP transaction manager B agrees by sending the PUSHED TIP command, passing as a parameter tidB, which is TIP transaction manager B's identifier for the transaction. At this point, TIP transaction manager B has an enlistment in the transaction, and the transaction is bound to the TIP connection. TIP transaction manager A returns to application A. Application A asks application B to do some work within the same transaction passing it the identifier of the pushed transaction, tidB. Application B does the requested work using the pushed transaction.
Application A does some local work in the transaction. Application A requests application B to do some work within the same transaction. Application B requests TIP transaction manager B to pull this transaction. The TIP subordinate transaction manager (section ) of TIP transaction manager B sends a TIP command to the TIP superior transaction manager facet (section ) of TIP transaction manager A, passing in parameters tidA and tidB (its local identifier for the transaction). TIP transaction manager A agrees by responding with the PULLED TIP command. At this point, TIP transaction manager B has an enlistment in the transaction, and the transaction is bound to the TIP connection. TIP transaction manager B returns to application B. Application B does the requested work using the pulled transaction. Pushing a Transaction In this scenario, application A requests its transaction manager A to push a transaction to TIP transaction manager B, and then sends a request to application B to do some work as a part of the pushed transaction. The following figure illustrates the scenario (TIP protocol messages are illustrated with dashed arrows). Figure : Pushing a transaction Application A requests the TIP transaction manager communicating with an application facet (section ) of TIP transaction manager A to create a transaction by sending the BEGIN TIP command. TIP transaction manager communicating with an application facet replies with a TIP command, passing in the identifier of the transaction (tidA) created by TIP transaction manager A. Application A does some local work in the transaction. Application A asks its TIP transaction manager A to push the transaction to TIP transaction manager B. The TIP superior transaction manager (section ) of TIP transaction manager A sends a TIP command to the TIP subordinate transaction manager facet of TIP transaction manager B, passing as a parameter tidA. The TIP transaction manager B agrees by sending the PUSHED TIP command, passing as a parameter tidB, which is TIP transaction manager B's identifier for the transaction. At this point, TIP transaction manager B has an enlistment in the transaction, and the transaction is bound to the TIP connection. TIP transaction manager A returns to application A. Application A asks application B to do some work within the same transaction passing it the identifier of the pushed transaction, tidB. Application B does the requested work using the pushed transaction.