3.1.4.4 Stopping a Pipeline

The higher-layer can choose to stop an executing pipeline. If the state of the pipeline is not Running, the client ignores the request. Otherwise, the following activities happen as part of stopping the pipeline. If a wxf:Fault message is received at any stage, the client reports the failure to the higher-layer, removes the pipeline from the RunspacePool's pipeline table (section 3.1.1.2.6), removes the pipeline from the global pipeline table (section 3.1.1.1.2), and changes the pipeline State to Failed (section 3.1.1.3.2).

  1. The client waits for a wxf:CommandResponse message for the wxf:Command message (section 3.1.5.3.3) before proceeding with stopping the pipeline.

  2. The client changes the pipeline state (section 3.1.1.3.2) to Stopping and sends a wxf:Signal message (section 3.1.5.3.9) to stop the pipeline on the server.

  3. The client expects a wxf:SignalResponse message (section 3.2.5.3.10) at this stage. If a wxf:SignalResponse message is received, the client changes the pipeline State (section 3.1.1.3.2) to Stopped, removes the pipeline from the RunspacePool's pipeline table (section 3.1.1.2.6), removes the pipeline from the global pipeline table (section 3.1.1.1.2), and notifies the higher-layer.