Package org.zkoss.zk.ui.sys

## Interface AbortingReason

- All Known Implementing Classes:
    `AbortByRemoveDesktop`, `AbortBySendRedirect`

      public interface AbortingReason

  The aborting reason used to abort the current execution.
  Author:
    tomyeh

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `execute()` | Called to process this aborting reason.
    `void` | `finish()` | Called after all processing is done, and just before deactivating the execution.
    `AuResponse` | `getResponse()` | Returns the response representing this aborting reason.
    `boolean` | `isAborting()` | Returns whether to abort the execution.

- - ### Method Detail

    - #### isAborting

          boolean isAborting()

      Returns whether to abort the execution.

    - #### execute

          void execute()

      Called to process this aborting reason. It is called after `UiEngine` processes all events, before generating the responses to the client.

      Note: it is always called even if `isAborting()` returns false.

      Note: `execute()` is called before generating the responses to the client, while `getResponse()` is called when generating the responses.

      The calling sequence: `execute()`, `getResponse()`, and then `finish()`.

      Since:
        3.0.0
      See Also:
        `getResponse()`

    - #### getResponse

          AuResponse getResponse()

      Returns the response representing this aborting reason. It is called when `UiEngine` generates the responses to client. Actually, it is called as the last step after generating all other responses. In other words, the response returned by this method, if any, will become the last response.

      Note: don't modify the components in `getResponse()`, since it is called after all other responses are generated.

      Note: it is always called even if `isAborting()` returns false.

      Note: `execute()` is called before generating the responses to the client, while `getResponse()` is called when generating the responses.

      Returns:
        the response to generate, or null if no response to generate.
      See Also:
        `execute()`

    - #### finish

          void finish()

      Called after all processing is done, and just before deactivating the execution.

      Note: it is always called even if `isAborting()` returns false.

      The calling sequence: `execute()`, `getResponse()`, and then `finish()`.

      Since:
        3.0.2