Class ReconnectRequest

  • All Implemented Interfaces:
    java.lang.Comparable<java.util.concurrent.Delayed>, java.util.concurrent.Delayed

    public final class ReconnectRequest
    extends java.lang.Object
    implements java.util.concurrent.Delayed
    A auto reconnect request,associating a socket address for reconnecting
    • Field Detail

      • tries

        private int tries
      • MIN_RECONNECT_INTERVAL

        private static final long MIN_RECONNECT_INTERVAL
        See Also:
        Constant Field Values
      • MAX_RECONNECT_INTERVAL

        private static final long MAX_RECONNECT_INTERVAL
        See Also:
        Constant Field Values
      • nextReconnectTimestamp

        private volatile long nextReconnectTimestamp
    • Constructor Detail

      • ReconnectRequest

        public ReconnectRequest​(InetSocketAddressWrapper inetSocketAddressWrapper,
                                int tries,
                                long reconnectInterval)
    • Method Detail

      • normalInterval

        private long normalInterval​(long reconnectInterval)
      • getDelay

        public long getDelay​(java.util.concurrent.TimeUnit unit)
        Specified by:
        getDelay in interface java.util.concurrent.Delayed
      • compareTo

        public int compareTo​(java.util.concurrent.Delayed o)
        Specified by:
        compareTo in interface java.lang.Comparable<java.util.concurrent.Delayed>
      • updateNextReconnectTimeStamp

        public void updateNextReconnectTimeStamp​(long interval)
      • setInetSocketAddressWrapper

        public final void setInetSocketAddressWrapper​(InetSocketAddressWrapper inetSocketAddressWrapper)
      • setTries

        public final void setTries​(int tries)
      • getTries

        public final int getTries()
        Returns retry times
        Returns:
        retry times,it is zero if it does not retry to connect