3.1.4.3 Abandon

The WSDL definition of the Abandon operation is as follows:

 <wsdl:operation name="Abandon">
   <wsdl:input wsaw:Action="http://schemas.datacontract.org/2008/10/
         WorkflowServices/IWorkflowInstanceManagement/Abandon"            
         message="tns:IWorkflowInstanceManagement_Abandon_InputMessage" />
   <wsdl:output wsaw:Action="http://schemas.datacontract.org/2008/10/
         WorkflowServices/IWorkflowInstanceManagement/AbandonResponse" 
         message="tns:IWorkflowInstanceManagement_Abandon_OutputMessage" />
 </wsdl:operation>

The Abandon operation SHOULD forcefully stop the execution of the durable program instance and indicate to the system that the current durable program instance execution image SHOULD be disposed. If the system maintains the durable state of the durable program instances, then the durable state SHOULD NOT be updated during execution of this operation.

For example, in an expense report processing system, an administrator might decide to Abandon all active reports and ask for them to be resubmitted. A GUID MUST be passed to the operation as the value of the <instanceId> element to identify the durable program instance on which the operation is to be performed. The operation SHOULD return a SOAP fault message if one or more of the following conditions exist:

  • The value of the <instanceId> element is not in the correct format, as specified in [MS-DTYP] section 2.3.4.

  • The <instanceId> element is absent.

  • The value of the <instanceId> element does not exist in the Durable Program Instance Table on the server.

  • The durable program instance associated with the value of the <instanceId> element is in the completed state.

  • The server encounters an internal error while executing the Abandon operation.