Package net.schmizz.keepalive
Class KeepAliveRunner
java.lang.Object
java.lang.Thread
net.schmizz.keepalive.KeepAlive
net.schmizz.keepalive.KeepAliveRunner
- All Implemented Interfaces:
Runnable
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Thread
Thread.Builder, Thread.State, Thread.UncaughtExceptionHandler
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
The max number of keep-alives that should be unanswered before killing the connection.private final Queue
<Promise<SSHPacket, ConnectionException>> The queue of promises.Fields inherited from class net.schmizz.keepalive.KeepAlive
conn, keepAliveInterval, log
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
protected void
private void
emptyQueue
(Queue<Promise<SSHPacket, ConnectionException>> queue) int
void
setMaxAliveCount
(int maxAliveCount) Methods inherited from class net.schmizz.keepalive.KeepAlive
getKeepAliveInterval, isEnabled, run, setKeepAliveInterval
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, isVirtual, join, join, join, join, ofPlatform, ofVirtual, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, sleep, start, startVirtualThread, stop, suspend, threadId, toString, yield
-
Field Details
-
maxAliveCount
private int maxAliveCountThe max number of keep-alives that should be unanswered before killing the connection. -
queue
The queue of promises.
-
-
Constructor Details
-
KeepAliveRunner
KeepAliveRunner(ConnectionImpl conn)
-
-
Method Details
-
getMaxAliveCount
public int getMaxAliveCount() -
setMaxAliveCount
public void setMaxAliveCount(int maxAliveCount) -
doKeepAlive
- Specified by:
doKeepAlive
in classKeepAlive
- Throws:
TransportException
ConnectionException
-
checkMaxReached
private void checkMaxReached(Queue<Promise<SSHPacket, ConnectionException>> queue) throws ConnectionException- Throws:
ConnectionException
-
emptyQueue
-