Package org.apache.sshd.client.future
Class DefaultAuthFuture
- java.lang.Object
-
- org.apache.sshd.common.util.logging.AbstractLoggingBean
-
- org.apache.sshd.common.future.AbstractSshFuture<T>
-
- org.apache.sshd.common.future.DefaultSshFuture<T>
-
- org.apache.sshd.common.future.DefaultVerifiableSshFuture<T>
-
- org.apache.sshd.common.future.DefaultCancellableSshFuture<AuthFuture>
-
- org.apache.sshd.client.future.DefaultAuthFuture
-
- All Implemented Interfaces:
AuthFuture,Cancellable,HasException,SshFuture<AuthFuture>,VerifiableFuture<AuthFuture>,WaitableFuture,WithException
public class DefaultAuthFuture extends DefaultCancellableSshFuture<AuthFuture> implements AuthFuture
A default implementation ofAuthFuture.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.concurrent.atomic.AtomicBooleancancellableprivate CancelFuturecancellation-
Fields inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
log
-
-
Constructor Summary
Constructors Constructor Description DefaultAuthFuture(java.lang.Object id, java.lang.Object lock)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CancelFuturecancel()Attempts to cancel the operation.CancelFuturegetCancellation()Retrieves theCancelFuture, ifCancellable.cancel()had been called.booleanisFailure()booleanisSuccess()voidsetAuthed(boolean authed)Notifies that the session has been authenticated.voidsetCancellable(boolean cancellable)Enables or disables cancellation of thisAuthFuture.AuthFutureverify(long timeoutMillis, CancelOption... options)Wait and verify that the operation was successfulbooleanwasCanceled()Tells whetherCancellable.cancel()was called on thisAuthFuture.-
Methods inherited from class org.apache.sshd.common.future.DefaultCancellableSshFuture
createCancellation, getException, isCanceled, setException
-
Methods inherited from class org.apache.sshd.common.future.DefaultSshFuture
addListener, await0, getNumRegisteredListeners, getValue, isDone, notifyListeners, onValueSet, removeListener, setValue, toString
-
Methods inherited from class org.apache.sshd.common.future.AbstractSshFuture
asListener, asT, await, awaitUninterruptibly, formatExceptionMessage, getId, notifyListener, verifyResult
-
Methods inherited from class org.apache.sshd.common.util.logging.AbstractLoggingBean
debug, debug, debug, debug, debug, error, error, error, error, error, getSimplifiedLogger, info, info, warn, warn, warn, warn, warn, warn, warn, warn
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.sshd.common.future.Cancellable
isCanceled
-
Methods inherited from interface org.apache.sshd.common.future.HasException
getException
-
Methods inherited from interface org.apache.sshd.common.future.SshFuture
addListener, removeListener
-
Methods inherited from interface org.apache.sshd.common.future.VerifiableFuture
verify, verify, verify, verify, verify, verify, verify
-
Methods inherited from interface org.apache.sshd.common.future.WaitableFuture
await, await, await, await, await, await, await, await, awaitUninterruptibly, awaitUninterruptibly, awaitUninterruptibly, awaitUninterruptibly, awaitUninterruptibly, awaitUninterruptibly, awaitUninterruptibly, awaitUninterruptibly, getId, isDone
-
Methods inherited from interface org.apache.sshd.common.future.WithException
setException
-
-
-
-
Field Detail
-
cancellation
private final CancelFuture cancellation
-
cancellable
private java.util.concurrent.atomic.AtomicBoolean cancellable
-
-
Method Detail
-
verify
public AuthFuture verify(long timeoutMillis, CancelOption... options) throws java.io.IOException
Description copied from interface:VerifiableFutureWait and verify that the operation was successful- Specified by:
verifyin interfaceVerifiableFuture<AuthFuture>- Parameters:
timeoutMillis- Wait timeout in millisecondsoptions- OptionalCancelOptions defining the behavior on time-out or interrupt; ignored if the future is notCancellable.- Returns:
- The (same) future instance
- Throws:
java.io.IOException- If failed to verify successfully on time
-
isSuccess
public boolean isSuccess()
- Specified by:
isSuccessin interfaceAuthFuture- Returns:
trueif the authentication operation is finished successfully. Note: calling this method while the operation is in progress returnsfalse. Should checkWaitableFuture.isDone()in order to ensure that the result is valid.
-
isFailure
public boolean isFailure()
- Specified by:
isFailurein interfaceAuthFuture- Returns:
falseif the authentication operation failed. Note: the operation is considered failed if an exception is received instead of a success/fail response code or the operation is in progress. Should checkWaitableFuture.isDone()in order to ensure that the result is valid.
-
setAuthed
public void setAuthed(boolean authed)
Description copied from interface:AuthFutureNotifies that the session has been authenticated. This method is invoked by SSHD internally. Please do not call this method directly.- Specified by:
setAuthedin interfaceAuthFuture- Parameters:
authed- Authentication success state
-
cancel
public CancelFuture cancel()
Attempts to cancel the operation. Note that returnedCancelFuturemay also be fulfilled unsuccessfully (i.e., (DefaultSshFuture.isDone()&& !DefaultCancellableSshFuture.isCanceled()) == true.- Specified by:
cancelin interfaceCancellable- Overrides:
cancelin classDefaultCancellableSshFuture<AuthFuture>- Returns:
- A
CancelFuturethat can be used to wait until the cancellation has been effected or theAuthFuturehas been fulfilled; nevernull.
-
getCancellation
public CancelFuture getCancellation()
Description copied from interface:CancellableRetrieves theCancelFuture, ifCancellable.cancel()had been called.- Specified by:
getCancellationin interfaceCancellable- Overrides:
getCancellationin classDefaultCancellableSshFuture<AuthFuture>- Returns:
- The
CancelFutureif theCancellablehas already been canceled, ornullotherwise
-
wasCanceled
public boolean wasCanceled()
Description copied from interface:AuthFutureTells whetherCancellable.cancel()was called on thisAuthFuture.This is different from
Cancellable.isCanceled(). Canceling an on-going authentication may not be possible;Cancellable.cancel()is only a request to cancel the authentication. That request may not be honored and theCancelFuturemay actually beisCanceled()== false.AuthFuture.Cancellable.isCanceled()is thenfalse, too.- Specified by:
wasCanceledin interfaceAuthFuture- Returns:
trueifCancellable.cancel()was called,falseotherwise
-
setCancellable
public void setCancellable(boolean cancellable)
Description copied from interface:AuthFutureEnables or disables cancellation of thisAuthFuture.This is a framework method; do not call directly.
- Specified by:
setCancellablein interfaceAuthFuture- Parameters:
cancellable- whether this future is currently cancellable
-
-