src/java.base/share/classes/java/net/SocketImpl.java
branchniosocketimpl-branch
changeset 57275 222fa5ed1c91
parent 57268 adcdd45830a0
child 57301 66c3aaf31f2b
equal deleted inserted replaced
57274:07b6be5d9150 57275:222fa5ed1c91
    39 
    39 
    40 /**
    40 /**
    41  * The abstract class {@code SocketImpl} is a common superclass
    41  * The abstract class {@code SocketImpl} is a common superclass
    42  * of all classes that actually implement sockets. It is used to
    42  * of all classes that actually implement sockets. It is used to
    43  * create both client and server sockets.
    43  * create both client and server sockets.
    44  * <p>
    44  *
    45  * A "plain" socket implements these methods exactly as
    45  * @implNote The JDK historically used a {@code SocketImpl} implementation named
    46  * described, without attempting to go through a firewall or proxy.
    46  * <em>PlainSocketImpl</em>. This has been replaced by a simpler and more modern
       
    47  * implementation but the JDK continues to ship with the older implementation
       
    48  * to allow code that depends on unspecified behavior, that differs between the
       
    49  * old and new implementations, to continue to run. The old implementation
       
    50  * will be used if the Java virtual machine is started with the system property
       
    51  * {@systemProperty jdk.net.usePlainSocketImpl} set on the command line. The
       
    52  * value of the system property is a boolean. If set without a value then it
       
    53  * defaults to {@code true}, hence running with {@code -Djdk.net.usePlainSocketImpl}
       
    54  * or {@code -Djdk.net.usePlainSocketImpl=true} will configure the Java virtual
       
    55  * machine use the old implementation.
    47  *
    56  *
    48  * @author  unascribed
    57  * @author  unascribed
    49  * @since   1.0
    58  * @since   1.0
    50  */
    59  */
    51 public abstract class SocketImpl implements SocketOptions {
    60 public abstract class SocketImpl implements SocketOptions {