On 25/01/2019 14:08, Alan Bateman wrote:
I've created a branch in the sandbox, named "niosocketimpl-branch",
with a prototype SocketImpl implementation based on the infrastructure
in sun.nio.ch package that supports the NIO channel implementations.
The branch also includes the changes to java.net.Socket and
ServerSocket to use this SocketImpl by default.
Just a quick update on this effort. Michael has changed the SOCKS and
HTTP proxy SocketImpl implementations to use delegation rather than
sub-classing so they can delegate to the new NIO based SocketImpl or the
old PlainSocketImpl. We've added a system property so you can run with
-Djdk.net.usePlainSocketImpl or -Djdk.net.usePlainSocketImpl=true to use
the old implementation. Existing tests are passing with both the old and
new implementations so I think this effort is starting to look good. I
expect we will be at the point soon where we could use some help from
those with libraries or applications that use the old
Socket/ServerSocket APIs extensively.
-Alan