g1 | The RM proxy sends a "Get Whereabouts" message to its resource manager asking for the whereabouts of the resource manager's transaction manager. The form of the "Get Whereabouts" message is proprietary to the RM proxy and the resource manager. |
g2.1 | The resource manager responds to the "Get Whereabouts" message by invoking the IUnknown::QueryInterface method on the MS DTC proxy core object to obtain the ITransactionImportWhereabouts interface. |
g2.2 | The resource manager invokes the ITransactionImportWhereabouts::GetWhereaboutsSize method to determine the size of the whereabouts. |
g3 | The MS DTC proxy returns the byte length of the whereabouts to the resource manager. |
g4 | The resource manager invokes the ITransactionImportWhereabouts::GetWhereabouts method to obtain the whereabouts. |
g5 | The MS DTC proxy returns the whereabouts that it obtains from its cache. The whereabouts is an opaque data structure that represents the address of the resource manager’s transaction manager. Other transaction managers can use the information in the whereabouts to locate and communicate with the resource manager’s transaction manager. |
g6 | The resource manager inserts the whereabouts in a "Return Whereabouts" message and returns this message to the RM proxy on the client’s system. The form of the "Return Whereabouts" message is proprietary to the RM proxy and the resource manager. |