On Thu, 4 Feb 2021 12:18:07 GMT, Patrick Concannon <pconcan...@openjdk.org> 
wrote:

>> Hi,
>> 
>> Could someone please review my proposed changeset for JDK-8235139: '`Remove 
>> the socket impl factory mechanism`' ?
>> 
>> These changes propose to deprecate (for the eventual removal) the API points 
>> for statically configuring a system-wide factory for the `Socket`, 
>> `ServerSocket`, and `DatagramSocket` types in the `java.net package`. 
>> Specifically, the following:
>> 
>> **Methods**:
>> - `static void Socket.setSocketImplFactory​(SocketImplFactory fac)`
>> - `static void ServerSocket.setSocketFactory​(SocketImplFactory fac)`
>> - `static void 
>> DatagramSocket.setDatagramSocketImplFactory​(DatagramSocketImplFactory fac)`
>> 
>> **Types**:
>> - `java.net SocketImplFactory`
>> - `java.net DatagramSocketImplFactory`
>> 
>> The CSR for[ JDK-8220494](https://bugs.openjdk.java.net/browse/JDK-8220494) 
>> contains some verbiage about the potential
>> issues that setting factories can have, and alludes to their possible
>> future removal. 
>> 
>> Kind regards,
>> Patrick
>
> Patrick Concannon has updated the pull request with a new target base due to 
> a merge or a rebase. The incremental webrev excludes the unrelated changes 
> brought in by the merge/rebase. The pull request contains three additional 
> commits since the last revision:
> 
>  - 8235139: Updated @deprecated text for setSocketFactory methods in Socket 
> and ServerSocket
>  - Merge remote-tracking branch 'origin/master' into JDK-8235139
>  - 8235139: Remove the socket impl factory mechanism

src/java.base/share/classes/java/net/ServerSocket.java line 928:

> 926:      * @see        SecurityManager#checkSetFactory
> 927:      * @deprecated Use {@link ServerSocketChannel}, or subclass {@code 
> ServerSocket}
> 928:      *    directly.

A better suggestion in the first line would be:

Use a {@link ServerSocketFactory} and subclass {@code ServerSocket} directly.

src/java.base/share/classes/java/net/Socket.java line 1755:

> 1753:      * @see        SecurityManager#checkSetFactory
> 1754:      * @deprecated Use {@link SocketChannel}, or subclass {@code Socket}
> 1755:      *    directly.

A better suggestion in the first line would be:

Use a {@link SocketFactory} and subclass {@code Socket} directly.

-------------

PR: https://git.openjdk.java.net/jdk/pull/2375

Reply via email to