Package com.rabbitmq.client.impl
Class HeartbeatSender
- java.lang.Object
-
- com.rabbitmq.client.impl.HeartbeatSender
-
final class HeartbeatSender extends java.lang.Object
Manages heartbeat sending for aAMQConnection
. Heartbeats are sent in a dedicated thread that is separate from the main loop thread used for the connection.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
HeartbeatSender.HeartbeatRunnable
-
Field Summary
Fields Modifier and Type Field Description private java.util.concurrent.ScheduledExecutorService
executor
private FrameHandler
frameHandler
private java.util.concurrent.ScheduledFuture<?>
future
private long
lastActivityTime
private java.lang.Object
monitor
private boolean
privateExecutor
private boolean
shutdown
private java.util.concurrent.ThreadFactory
threadFactory
-
Constructor Summary
Constructors Constructor Description HeartbeatSender(FrameHandler frameHandler, java.util.concurrent.ScheduledExecutorService heartbeatExecutor, java.util.concurrent.ThreadFactory threadFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private java.util.concurrent.ScheduledExecutorService
createExecutorIfNecessary()
void
setHeartbeat(int heartbeatSeconds)
Sets the heartbeat in seconds.void
shutdown()
Shutdown the heartbeat process, if any.void
signalActivity()
-
-
-
Field Detail
-
monitor
private final java.lang.Object monitor
-
frameHandler
private final FrameHandler frameHandler
-
threadFactory
private final java.util.concurrent.ThreadFactory threadFactory
-
executor
private java.util.concurrent.ScheduledExecutorService executor
-
privateExecutor
private final boolean privateExecutor
-
future
private java.util.concurrent.ScheduledFuture<?> future
-
shutdown
private boolean shutdown
-
lastActivityTime
private volatile long lastActivityTime
-
-
Constructor Detail
-
HeartbeatSender
HeartbeatSender(FrameHandler frameHandler, java.util.concurrent.ScheduledExecutorService heartbeatExecutor, java.util.concurrent.ThreadFactory threadFactory)
-
-
Method Detail
-
signalActivity
public void signalActivity()
-
setHeartbeat
public void setHeartbeat(int heartbeatSeconds)
Sets the heartbeat in seconds.
-
createExecutorIfNecessary
private java.util.concurrent.ScheduledExecutorService createExecutorIfNecessary()
-
shutdown
public void shutdown()
Shutdown the heartbeat process, if any.
-
-