Package com.iizix.timeout.engine
Class TimeoutTask
- java.lang.Object
- java.util.TimerTask
- com.iizix.timeout.engine.TimeoutTask
 
 
- All Implemented Interfaces:
- ITimeoutTask,- ITimerTask,- java.lang.Runnable
 - public class TimeoutTask extends java.util.TimerTask implements ITimeoutTask The implementation of the interface for a registered timeout task that can be queried for timeout or canceled state.- Author:
- Christopher Mindus
 
- Method Summary- All Methods Instance Methods Concrete Methods - Modifier and Type - Method - Description - boolean- cancelTimeout()Cancels the timeout task.- long- getRemainingTime()Gets the remaining time before timeout.- long- getStartTime()Gets the starting time.- boolean- hasNotifiedTimeout()Returns whether timeout notification has been called or not.- boolean- hasTimedOut()Verifies if timeout has occurred.- void- run()Called when timeout occurs.- Methods inherited from class java.lang.Object- clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 - Methods inherited from interface com.iizix.timeout.ITimeoutTask- cancel
 
 
- Method Detail- getStartTime- public long getStartTime() Gets the starting time.- Returns the starting time in milliseconds. Note that while the unit of time of the return value is a millisecond, the granularity of the value depends on the underlying operating system and may be larger. For example, many operating systems measure time in units of tens of milliseconds. - See the description of the class - Datefor a discussion of slight discrepancies that may arise between "computer time" and coordinated universal time (UTC).- Specified by:
- getStartTimein interface- ITimerTask
- Returns:
- The difference, measured in milliseconds, between the start time and midnight, January 1, 1970 UTC.
- See Also:
- Date
 
 - getRemainingTime- public 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.- Specified by:
- getRemainingTimein interface- ITimeoutTask
- 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_VALUEif the timeout is indefinite.
 
 - hasTimedOut- public boolean hasTimedOut() Verifies if timeout has occurred.- Specified by:
- hasTimedOutin interface- ITimeoutTask
- Returns:
- true if the task has timed out, false otherwise.
 
 - hasNotifiedTimeout- public boolean hasNotifiedTimeout() Returns whether timeout notification has been called or not.- Specified by:
- hasNotifiedTimeoutin interface- ITimeoutTask
- Returns:
- true if the timeout task has been notified, false otherwise (e.g. task canceled).
 
 - cancelTimeout- public boolean cancelTimeout() Cancels the timeout task. This call can be done from any thread and will stop any timeout notification of- ITimeoutListener.onTimeout().- Specified by:
- cancelTimeoutin interface- ITimeoutTask
- Returns:
- true for success, false if already canceled.
 
 - run- public void run() Called when timeout occurs.- Specified by:
- runin interface- java.lang.Runnable
- Specified by:
- runin class- java.util.TimerTask