Package net.i2p.util
Class SocketTimeout
java.lang.Object
net.i2p.util.SimpleTimer2.TimedEvent
net.i2p.util.SocketTimeout
- All Implemented Interfaces:
Runnable
Implements one or two timers; one for inactivity, that is reset by resetTimer(),
and optionally, a total time since instantiation, that is configured by setTotalTimeoutPeriod().
On timer expiration, this will close a provided socket, and/or run a configured job.
Deprecated for external use.
It is only used by EepGet, its subclasses, and Syndie.
Take care not to break Syndie.
The only advantage seems to be a total timeout period, which is the second
argument to EepGet.fetch(headerTimeout, totalTimeout, inactivityTimeout),
which is most likely always set to -1.
Not for use by plugins or external applications, subject to change.
Use socket.setsotimeout instead?
-
Field Summary
Fields inherited from class net.i2p.util.SimpleTimer2.TimedEvent
_state, DEFAULT_FUZZ
-
Constructor Summary
ConstructorDescriptionSocketTimeout
(long delay) SocketTimeout
(Socket socket, long delay) If socket is non-null, or is set later by setSocket(), it will be closed when the timer expires. -
Method Summary
Modifier and TypeMethodDescriptionboolean
cancel()
Change in return value from void to boolean in 0.9.3 accidentally broke Syndie, sorry.void
Call when there is activityvoid
setInactivityTimeout
(long delay) Changes the delay provided in the constructorvoid
If non-null, will be closed when the timer expires.void
If non-null, will be run when the timer expires.void
setTotalTimeoutPeriod
(long timeoutPeriod) If greater than zero, must be greater than the inactivity timeout.void
Simple interface for events to be queued up and notified on expiration the time requested has been reached (this call should NOT block, otherwise the whole SimpleTimer gets backed up)toString()
Methods inherited from class net.i2p.util.SimpleTimer2.TimedEvent
forceReschedule, reschedule, reschedule, run, schedule, setFuzz
-
Constructor Details
-
SocketTimeout
public SocketTimeout(long delay) - Parameters:
delay
- The inactivity delay, greater than zero
-
SocketTimeout
If socket is non-null, or is set later by setSocket(), it will be closed when the timer expires.- Parameters:
socket
- may be nulldelay
- The inactivity delay, greater than zero
-
-
Method Details
-
timeReached
public void timeReached()Description copied from class:SimpleTimer2.TimedEvent
Simple interface for events to be queued up and notified on expiration the time requested has been reached (this call should NOT block, otherwise the whole SimpleTimer gets backed up)- Specified by:
timeReached
in classSimpleTimer2.TimedEvent
-
cancel
public boolean cancel()Change in return value from void to boolean in 0.9.3 accidentally broke Syndie, sorry. Recompile Syndie to fix it.- Overrides:
cancel
in classSimpleTimer2.TimedEvent
- Returns:
- true if cancelled
-
setSocket
If non-null, will be closed when the timer expires. -
resetTimer
public void resetTimer()Call when there is activity -
setInactivityTimeout
public void setInactivityTimeout(long delay) Changes the delay provided in the constructor- Parameters:
delay
- greater than zero
-
setTotalTimeoutPeriod
public void setTotalTimeoutPeriod(long timeoutPeriod) If greater than zero, must be greater than the inactivity timeout.- Parameters:
timeoutPeriod
- Time since constructed, or less than or equal to zero to disable
-
setTimeoutCommand
If non-null, will be run when the timer expires. -
toString
-