Package org.apache.sshd.common.future
Interface WaitableFuture
-
- All Known Subinterfaces:
AuthFuture,CloseFuture,ConnectFuture,IoConnectFuture,IoReadFuture,IoWriteFuture,KeyExchangeFuture,OpenFuture,SshFuture<T>
- All Known Implementing Classes:
AbstractIoWriteFuture,AbstractSshFuture,ChannelAsyncInputStream.IoReadFutureImpl,DefaultAuthFuture,DefaultCloseFuture,DefaultConnectFuture,DefaultKeyExchangeFuture,DefaultOpenFuture,DefaultSshFuture,DefaultVerifiableSshFuture,IoWriteFutureImpl,Nio2Connector.DefaultIoConnectFuture,Nio2DefaultIoWriteFuture,PendingWriteFuture
public interface WaitableFutureRepresents an asynchronous operation which one can wait for its completion. Note: the only thing guaranteed is that iftrueis returned from one of theawaitXXXmethods then the operation has completed. However, the caller has to determine whether it was a successful or failed completion.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default booleanawait()WaitLong.MAX_VALUEmsec.booleanawait(long timeoutMillis)Wait for the asynchronous operation to complete with the specified timeout.default booleanawait(long timeout, java.util.concurrent.TimeUnit unit)Wait for the asynchronous operation to complete with the specified timeout.default booleanawaitUninterruptibly()WaitLong.MAX_VALUEmsec.booleanawaitUninterruptibly(long timeoutMillis)Wait for the asynchronous operation to complete with the specified timeout uninterruptibly.default booleanawaitUninterruptibly(long timeout, java.util.concurrent.TimeUnit unit)Wait for the asynchronous operation to complete with the specified timeout uninterruptibly.java.lang.ObjectgetId()booleanisDone()
-
-
-
Method Detail
-
getId
java.lang.Object getId()
- Returns:
- Some identifier useful as
toString()value
-
await
default boolean await() throws java.io.IOExceptionWaitLong.MAX_VALUEmsec. for the asynchronous operation to complete. The attached listeners will be notified when the operation is completed.- Returns:
trueif the operation is completed.- Throws:
java.io.IOException- if failed - specificallyInterruptedIOExceptionif waiting was interrupted- See Also:
await(long)
-
await
default boolean await(long timeout, java.util.concurrent.TimeUnit unit) throws java.io.IOExceptionWait for the asynchronous operation to complete with the specified timeout.- Parameters:
timeout- The number of time units to waitunit- TheTimeUnitfor waiting- Returns:
trueif the operation is completed.- Throws:
java.io.IOException- if failed - specificallyInterruptedIOExceptionif waiting was interrupted- See Also:
await(long)
-
await
boolean await(long timeoutMillis) throws java.io.IOExceptionWait for the asynchronous operation to complete with the specified timeout.- Parameters:
timeoutMillis- Wait time in milliseconds- Returns:
trueif the operation is completed.- Throws:
java.io.IOException- if failed - specificallyInterruptedIOExceptionif waiting was interrupted
-
awaitUninterruptibly
default boolean awaitUninterruptibly()
WaitLong.MAX_VALUEmsec. for the asynchronous operation to complete uninterruptibly. The attached listeners will be notified when the operation is completed.- Returns:
trueif the operation is completed.- See Also:
awaitUninterruptibly(long)
-
awaitUninterruptibly
default boolean awaitUninterruptibly(long timeout, java.util.concurrent.TimeUnit unit)Wait for the asynchronous operation to complete with the specified timeout uninterruptibly.- Parameters:
timeout- The number of time units to waitunit- TheTimeUnitfor waiting- Returns:
trueif the operation is completed.- See Also:
awaitUninterruptibly(long)
-
awaitUninterruptibly
boolean awaitUninterruptibly(long timeoutMillis)
Wait for the asynchronous operation to complete with the specified timeout uninterruptibly.- Parameters:
timeoutMillis- Wait time in milliseconds- Returns:
trueif the operation is finished.
-
isDone
boolean isDone()
- Returns:
trueif the asynchronous operation is completed. Note: it is up to the caller to determine whether it was a successful or failed completion.
-
-