Package net.i2p.util
Class SocketTimeout
- java.lang.Object
- 
- net.i2p.util.SimpleTimer2.TimedEvent
- 
- net.i2p.util.SocketTimeout
 
 
- 
- All Implemented Interfaces:
- Runnable
 
 public class SocketTimeout extends SimpleTimer2.TimedEvent 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 SummaryConstructors Constructor Description SocketTimeout(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 SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancancel()Change in return value from void to boolean in 0.9.3 accidentally broke Syndie, sorry.voidresetTimer()Call when there is activityvoidsetInactivityTimeout(long delay)Changes the delay provided in the constructorvoidsetSocket(Socket s)If non-null, will be closed when the timer expires.voidsetTimeoutCommand(Runnable job)If non-null, will be run when the timer expires.voidsetTotalTimeoutPeriod(long timeoutPeriod)If greater than zero, must be greater than the inactivity timeout.voidtimeReached()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)StringtoString()- 
Methods inherited from class net.i2p.util.SimpleTimer2.TimedEventforceReschedule, reschedule, reschedule, run, schedule, setFuzz
 
- 
 
- 
- 
- 
Constructor Detail- 
SocketTimeoutpublic SocketTimeout(long delay) - Parameters:
- delay- The inactivity delay, greater than zero
 
 - 
SocketTimeoutpublic SocketTimeout(Socket socket, long delay) If socket is non-null, or is set later by setSocket(), it will be closed when the timer expires.- Parameters:
- socket- may be null
- delay- The inactivity delay, greater than zero
 
 
- 
 - 
Method Detail- 
timeReachedpublic void timeReached() Description copied from class:SimpleTimer2.TimedEventSimple 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:
- timeReachedin class- SimpleTimer2.TimedEvent
 
 - 
cancelpublic boolean cancel() Change in return value from void to boolean in 0.9.3 accidentally broke Syndie, sorry. Recompile Syndie to fix it.- Overrides:
- cancelin class- SimpleTimer2.TimedEvent
- Returns:
- true if cancelled
 
 - 
setSocketpublic void setSocket(Socket s) If non-null, will be closed when the timer expires.
 - 
resetTimerpublic void resetTimer() Call when there is activity
 - 
setInactivityTimeoutpublic void setInactivityTimeout(long delay) Changes the delay provided in the constructor- Parameters:
- delay- greater than zero
 
 - 
setTotalTimeoutPeriodpublic 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
 
 - 
setTimeoutCommandpublic void setTimeoutCommand(Runnable job) If non-null, will be run when the timer expires.
 
- 
 
-