Package android.os
Class CancellationSignal
- java.lang.Object
-
- android.os.CancellationSignal
-
public final class CancellationSignal extends Object
Provides the ability to cancel an operation in progress.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceCancellationSignal.OnCancelListenerListens for cancellation.
-
Constructor Summary
Constructors Constructor Description CancellationSignal()Creates a cancellation signal, initially not canceled.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcancel()Cancels the operation and signals the cancellation listener.static android.os.ICancellationSignalcreateTransport()Creates a transport that can be returned back to the caller of a Binder function and subsequently used to dispatch a cancellation signal.static CancellationSignalfromTransport(android.os.ICancellationSignal transport)Given a locally created transport, returns its associated cancellation signal.booleanisCanceled()Returns true if the operation has been canceled.voidsetOnCancelListener(CancellationSignal.OnCancelListener listener)Sets the cancellation listener to be called when canceled.voidsetRemote(android.os.ICancellationSignal remote)Sets the remote transport.voidthrowIfCanceled()ThrowsOperationCanceledExceptionif the operation has been canceled.
-
-
-
Method Detail
-
isCanceled
public boolean isCanceled()
Returns true if the operation has been canceled.- Returns:
- True if the operation has been canceled.
-
throwIfCanceled
public void throwIfCanceled()
ThrowsOperationCanceledExceptionif the operation has been canceled.- Throws:
OperationCanceledException- if the operation has been canceled.
-
cancel
public void cancel()
Cancels the operation and signals the cancellation listener. If the operation has not yet started, then it will be canceled as soon as it does.
-
setOnCancelListener
public void setOnCancelListener(CancellationSignal.OnCancelListener listener)
Sets the cancellation listener to be called when canceled. This method is intended to be used by the recipient of a cancellation signal such as a database or a content provider to handle cancellation requests while performing a long-running operation. This method is not intended to be used by applications themselves. Ifcancel()has already been called, then the provided listener is invoked immediately. This method is guaranteed that the listener will not be called after it has been removed.- Parameters:
listener- The cancellation listener, or null to remove the current listener.
-
setRemote
public void setRemote(android.os.ICancellationSignal remote)
Sets the remote transport. Ifcancel()has already been called, then the provided remote transport is canceled immediately. This method is guaranteed that the remote transport will not be called after it has been removed.- Parameters:
remote- The remote transport, or null to remove.
-
createTransport
public static android.os.ICancellationSignal createTransport()
Creates a transport that can be returned back to the caller of a Binder function and subsequently used to dispatch a cancellation signal.- Returns:
- The new cancellation signal transport.
-
fromTransport
public static CancellationSignal fromTransport(android.os.ICancellationSignal transport)
Given a locally created transport, returns its associated cancellation signal.- Parameters:
transport- The locally created transport, or null if none.- Returns:
- The associated cancellation signal, or null if none.
-
-