3.4.7.2.4 Phase One Complete

The Phase One Complete event MUST be signaled with the following arguments:

  • An enlistment object.

  • A value indicating the outcome of Phase One. This value MUST be set to one of the following values:

    • Read-Only

    • Committed

    • Aborted

    • In Doubt

If the Phase One Complete event is signaled, the TIP transaction manager communicating with an application facet (section 1.3.1.2.3) MUST perform the following actions:

  • If the provided outcome is In Doubt:

  • Otherwise:

    • If the provided outcome is Committed:

      • Set the State field of the TIP connection object referenced by the provided enlistment to Idle.

      • Send a COMMITTED TIP command.

    • If the provided outcome is Aborted:

      • Set the State field of the TIP connection object referenced by the provided enlistment to Idle.

      • Send an ABORTED TIP command.

    • If the provided outcome is Read-Only:

      • Set the State field of the TIP connection object referenced by the provided enlistment to Idle.

      • Send a COMMITTED TIP command.