Class Frame.Heartbeat

  • Enclosing class:
    Frame

    public static class Frame.Heartbeat
    extends Object
    Represents the heartbeat configuration. Heartbeat determine when a party involved in the exchange (either the client or the server) can detect the inactivity of the other party and close the connection. Configuration is made in the heartbeat header.

    This class is thread-safe.

    • Constructor Detail

      • Heartbeat

        public Heartbeat​(int x,
                         int y)
    • Method Detail

      • parse

        public static Frame.Heartbeat parse​(String header)
        Creates an instance of Frame.Heartbeat from the heartbeat header of a frame . If the header is null, the (0,0) configuration is returned.
        Parameters:
        header - the header
        Returns:
        the heartbeat configuration
      • create

        public static Frame.Heartbeat create​(JsonObject json)
        Creates an instance of Frame.Heartbeat from the JSON configuration provides in the client / server options. The JSON is structure as follows: {"x": 1000, "y": 1000}. The x and y time are given in milliseconds.
        Parameters:
        json - the json object configuring the heartbeat.
        Returns:
        the heartbeat configuration
      • toString

        public String toString()
        Overrides:
        toString in class Object
        Returns:
        the heartbeat configuration to be used in the heartbeat header.
      • computePingPeriod

        public static long computePingPeriod​(Frame.Heartbeat client,
                                             Frame.Heartbeat server)
        Computes the ping period. The party must send a ping to the other party every x milliseconds, where x is the value returned by this method. The value is computed from the two parties heartbeat configuration.
        Parameters:
        client - the client configuration
        server - the server configuration
        Returns:
        the ping period
      • computePongPeriod

        public static long computePongPeriod​(Frame.Heartbeat client,
                                             Frame.Heartbeat server)
        Computes the pong period. The party can consider the other party inactive when it did not receives any message since x, where x is the value returned by this method. The value is computed from the two parties heartbeat configuration.
        Parameters:
        client - the client configuration
        server - the server configuration
        Returns:
        the pong period