Class HeartbeatSender


  • final class HeartbeatSender
    extends java.lang.Object
    Manages heartbeat sending for a AMQConnection.

    Heartbeats are sent in a dedicated thread that is separate from the main loop thread used for the connection.

    • Field Detail

      • monitor

        private final java.lang.Object monitor
      • 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.