There are three PlainSocketImpl implementations in JDK:
java.base/windows/classes/java/net/DualStackPlainSocketImpl.java
java.base/windows/classes/java/net/TwoStacksPlainSocketImpl.java
java.base/unix/classes/java/net/PlainSocketImpl.java
While two later have very similar organization (in particular, set of native methods), the former is organized slightly differently.
In order to merge the two windows implementation, they first need to be organized in a similar way.
For consistency, DualStack implementation will be reorganized to be aligned with TwoStacks (and unix/PlainSocketImpl).
java.base/windows/classes/java/net/DualStackPlainSocketImpl.java
java.base/windows/classes/java/net/TwoStacksPlainSocketImpl.java
java.base/unix/classes/java/net/PlainSocketImpl.java
While two later have very similar organization (in particular, set of native methods), the former is organized slightly differently.
In order to merge the two windows implementation, they first need to be organized in a similar way.
For consistency, DualStack implementation will be reorganized to be aligned with TwoStacks (and unix/PlainSocketImpl).