3.5.4.5 Enlistment Commit Request Completed
This event MUST be signaled by the higher-layer business logic with the following arguments:
A connection object
When the higher-layer business logic completes an enlistment Commit request as specified in section 3.5.5.2.2.4 and 3.5.5.3.1.1, the resource manager MUST perform the following steps:
If the connection type of the connection object is CONNTYPE_TXUSER_ENLISTMENT (section 2.2.10.2.2):
Remove the transaction object referenced by the connection object from the Resource Manager.Durable Log.
Send a TXUSER_ENLISTMENT_MTAG_COMMITREQDONE (section 2.2.10.2.2.4) message using the connection.
Set the connection state to Ended.
Otherwise, if the connection type of the connection object is CONNTYPE_TXUSER_REENLIST (section 2.2.10.3.1):
Remove the transaction object referenced by the connection object from the Resource Manager.Durable Log.
Remove the connection from the reenlistment list of the resource manager.
If the list is now empty:
Signal the Reenlistment Complete (section 3.5.7.3) event on the resource manager.
Set the connection state to Ended.
Otherwise, ignore the event.