org.gradle.tooling

## Interface CancellationTokenSource

-     @Incubating
      public interface CancellationTokenSource

  A `CancellationTokenSource` allows you to issue cancellation requests to one or more `LongRunningOperation` instances. To use a token source:
  - Create a token source using `GradleConnector.newCancellationTokenSource()`.
  - Attach the token to one or more operations using `LongRunningOperation.withCancellationToken(CancellationToken)`. You need to do this before you start the operation.
  - Later, you can cancel the associated operations by calling `cancel()` on this token source.

  All implementations of this interface are required to be thread safe.

  Since:
    2.1

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `cancel()` Initiates cancel request.
    `CancellationToken` | `token()` Returns a token associated with this `CancellationTokenSource`.

- - ### Method Detail

    - #### cancel

          void cancel()

      Initiates cancel request. All operations that have been associated with this token will be cancelled.

      It is assumed that the implementation will do 'best-effort' attempt to perform cancellation. This method returns immediately and if the cancellation is successful the cancelled operation will notify its `ResultHandler.onFailure(GradleConnectionException)` with a `BuildCancelledException` describing how it was cancelled.

    - #### token

          CancellationToken token()

      Returns a token associated with this `CancellationTokenSource`. Always returns the same instance.
      Returns:
        The cancellation token.