Hi,

Please find the latest webrev(http://cr.openjdk.java.net/~vtewari/8194298/webrev0.1/index.html). I incorporated  most of the review comments.

Thanks,

Vyom


On Wednesday 18 April 2018 07:44 PM, Chris Hegarty wrote:
Vyom,

On 13/04/18 10:50, vyom tewari wrote:
Hi All,

Please review the below code.

BugId    : https://bugs.openjdk.java.net/browse/JDK-8194298

webrev : http://cr.openjdk.java.net/~vtewari/8194298/webrev0.0/index.html

Here is some proposed wording for the JDK-specific extended socket
options specification.

1) Uses a consistent style across all three new options,
   and is in line with existing extended options.
2) Renamed the options slightly, to improve readability
   ( they don't need to conform to the native option names )
3) Reordered them so the build up is more logical
4) Removed inheritance from server sockets
5) Added standard verbiage about being "platform and
   system dependent
6) Added typical values. I think this is useful, as it
   gives an idea to the developer, but maybe it could be
   misleading. Can be dropped if there are concerns.

Can you please confirm that this is accurate, and also
will leave enough "wriggle" room when additional platform
support is added.

---

    /**
     * Keep-Alive idle time.
     *
     * <p> When the {@link java.net.StandardSocketOptions#SO_KEEPALIVE
     * SO_KEEPALIVE} option is enabled, TCP probes a connection that has been      * idle for some amount of time. The default value for this idle period is      * system dependent, but is typically 2 hours. The {@code TCP_KEEPIDLE}
     * option can be used to affect this value for a given socket.
     *
     * <p> The value of this socket option is an {@code Integer} that is the      * number of seconds of idle time before keep-alive initiates a probe. The      * socket option is specific to stream-oriented sockets using the TCP/IP      * protocol. The exact semantics of this socket option are socket type and
     * system dependent.
     *
     *  @since 11
     */
    public static final SocketOption<Integer> TCP_KEEPIDLE
            = new ExtSocketOption<Integer>("TCP_KEEPIDLE", Integer.class);

    /**
     * Keep-Alive retransmission interval time.
     *
     * <p> When the {@link java.net.StandardSocketOptions#SO_KEEPALIVE
     * SO_KEEPALIVE} option is enabled, TCP probes a connection that has been      * idle for some amount of time. If the remote system does not respond to a      * keep-alive probe, TCP retransmits the probe after some amount of time.      * The default value for this retransmition interval is system dependent,      * but is typically 75 seconds. The {@code TCP_KEEPINTERVAL} option can be
     * used to affect this value for a given socket.
     *
     * <p> The value of this socket option is an {@code Integer} that is the      * number of seconds to wait before retransmitting a keep-alive probe. The      * socket option is specific to stream-oriented sockets using the TCP/IP      * protocol. The exact semantics of this socket option are socket type and
     * system dependent.
     *
     * @since 11
     */
    public static final SocketOption<Integer> TCP_KEEPINTERVAL
            = new ExtSocketOption<Integer>("TCP_KEEPINTERVAL", Integer.class);

    /**
     * Keep-Alive retransmission maximum limit.
     *
     * <p> When the {@link java.net.StandardSocketOptions#SO_KEEPALIVE
     * SO_KEEPALIVE} option is enabled, TCP probes a connection that has been      * idle for some amount of time. If the remote system does not respond to a      * keep-alive probe, TCP retransmits the probe a certain number of times      * before a connection is considered to be broken. The default value for
     * this keep-alive probe retransmit limit is system dependent, but is
     * typically 8. The {@code TCP_KEEPCOUNT} option can be used to affect
     * this value for a given socket.
     *
     * <p> The value of this socket option is an {@code Integer} that is the      * maximum number of keep-alive probes to be sent. The socket option is      * specific to stream-oriented sockets using the TCP/IP protocol. The exact      * semantics of this socket option are socket type and system dependent.
     *
     * @since 11
     */
    public static final SocketOption<Integer> TCP_KEEPCOUNT
            = new ExtSocketOption<Integer>("TCP_KEEPCOUNT", Integer.class);

-Chris.

Reply via email to