Package com.iizix.timeout
Interface ITimeoutTask
- All Superinterfaces:
ITimerTask
- All Known Implementing Classes:
TimeoutTask
public interface ITimeoutTask extends ITimerTask
An interface for a registered timeout task that can be queried for timeout or canceled.- Author:
- Christopher Mindus
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default boolean
cancel()
Cancels the timer task.boolean
cancelTimeout()
Cancels the timeout task.long
getRemainingTime()
Gets the remaining time before timeout.boolean
hasNotifiedTimeout()
Returns whether timeout notification has been called or not.boolean
hasTimedOut()
Verifies if timeout has occurred.Methods inherited from interface com.iizix.timeout.ITimerTask
getStartTime
Method Detail
getRemainingTime
long getRemainingTime()
Gets the remaining time before timeout. This value just keeps on counting, even when the timeout has occurred or the task is stopped.- Returns:
- A time in milliseconds >= zero indicating the remaining timeout time, or < zero if the task has timed out. The return value is
Long.MAX_VALUE
if the timeout is indefinite.
hasTimedOut
boolean hasTimedOut()
Verifies if timeout has occurred.- Returns:
- true if the task has timed out, false otherwise.
hasNotifiedTimeout
boolean hasNotifiedTimeout()
Returns whether timeout notification has been called or not.- Returns:
- true if the timeout task has been notified, false otherwise (e.g. task canceled).
cancelTimeout
boolean cancelTimeout()
Cancels the timeout task. This call can be done from any thread and will stop any timeout notification ofITimeoutListener.onTimeout()
.- Returns:
- true for success, false if already canceled.
cancel
default boolean cancel()
Cancels the timer task. This call can be done from any thread and will stop any notification of the timer event.- Specified by:
cancel
in interfaceITimerTask
- Returns:
- true for success, false if already canceled.