From 50826c3e099821dca5d9573d9aa6e52238203fff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Volkan=20Yaz=C4=B1c=C4=B1?= Date: Tue, 4 Nov 2025 11:48:10 +0100 Subject: [PATCH 1/3] Deprecate `Socket::setPerformancePreferences` and friends for removal --- src/java.base/share/classes/java/net/ServerSocket.java | 1 + src/java.base/share/classes/java/net/Socket.java | 1 + src/java.base/share/classes/java/net/SocketImpl.java | 1 + .../share/classes/sun/security/ssl/BaseSSLSocketImpl.java | 3 ++- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/java.base/share/classes/java/net/ServerSocket.java b/src/java.base/share/classes/java/net/ServerSocket.java index af7cedfd966a2..51e0398ce10c9 100644 --- a/src/java.base/share/classes/java/net/ServerSocket.java +++ b/src/java.base/share/classes/java/net/ServerSocket.java @@ -948,6 +948,7 @@ public int getReceiveBufferSize() throws SocketException { * * @since 1.5 */ + @Deprecated(since = "26", forRemoval = true) public void setPerformancePreferences(int connectionTime, int latency, int bandwidth) diff --git a/src/java.base/share/classes/java/net/Socket.java b/src/java.base/share/classes/java/net/Socket.java index a2aee2e45a19d..592cf9b4f207c 100644 --- a/src/java.base/share/classes/java/net/Socket.java +++ b/src/java.base/share/classes/java/net/Socket.java @@ -1854,6 +1854,7 @@ public static synchronized void setSocketImplFactory(SocketImplFactory fac) * * @since 1.5 */ + @Deprecated(since = "26", forRemoval = true) public void setPerformancePreferences(int connectionTime, int latency, int bandwidth) diff --git a/src/java.base/share/classes/java/net/SocketImpl.java b/src/java.base/share/classes/java/net/SocketImpl.java index 15c12457aac58..fb6a5253b15d6 100644 --- a/src/java.base/share/classes/java/net/SocketImpl.java +++ b/src/java.base/share/classes/java/net/SocketImpl.java @@ -358,6 +358,7 @@ void reset() { * * @since 1.5 */ + @Deprecated(since = "26", forRemoval = true) protected void setPerformancePreferences(int connectionTime, int latency, int bandwidth) diff --git a/src/java.base/share/classes/sun/security/ssl/BaseSSLSocketImpl.java b/src/java.base/share/classes/sun/security/ssl/BaseSSLSocketImpl.java index 20bb67c06d63c..a24d6e5799c69 100644 --- a/src/java.base/share/classes/sun/security/ssl/BaseSSLSocketImpl.java +++ b/src/java.base/share/classes/sun/security/ssl/BaseSSLSocketImpl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2002, 2022, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2002, 2025, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -556,6 +556,7 @@ public final boolean getReuseAddress() throws SocketException { * @see java.net.Socket#setPerformancePreferences(int, int, int) */ @Override + @SuppressWarnings("removal") public void setPerformancePreferences(int connectionTime, int latency, int bandwidth) { if (self == this) { From 41c918cfa60d281a90164cd2f6ba1330f26addc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Volkan=20Yaz=C4=B1c=C4=B1?= Date: Tue, 4 Nov 2025 18:26:50 +0100 Subject: [PATCH 2/3] Improve Javadoc --- src/java.base/share/classes/java/net/ServerSocket.java | 3 +++ src/java.base/share/classes/java/net/Socket.java | 3 +++ src/java.base/share/classes/java/net/SocketImpl.java | 3 +++ 3 files changed, 9 insertions(+) diff --git a/src/java.base/share/classes/java/net/ServerSocket.java b/src/java.base/share/classes/java/net/ServerSocket.java index 51e0398ce10c9..100b071e005a1 100644 --- a/src/java.base/share/classes/java/net/ServerSocket.java +++ b/src/java.base/share/classes/java/net/ServerSocket.java @@ -947,6 +947,9 @@ public int getReceiveBufferSize() throws SocketException { * bandwidth * * @since 1.5 + * + * @deprecated This function has always been a no-op. + * It is deprecated for removal without any replacement. */ @Deprecated(since = "26", forRemoval = true) public void setPerformancePreferences(int connectionTime, diff --git a/src/java.base/share/classes/java/net/Socket.java b/src/java.base/share/classes/java/net/Socket.java index 592cf9b4f207c..2f9aaef99ab18 100644 --- a/src/java.base/share/classes/java/net/Socket.java +++ b/src/java.base/share/classes/java/net/Socket.java @@ -1853,6 +1853,9 @@ public static synchronized void setSocketImplFactory(SocketImplFactory fac) * bandwidth * * @since 1.5 + * + * @deprecated This function has always been a no-op. + * It is deprecated for removal without any replacement. */ @Deprecated(since = "26", forRemoval = true) public void setPerformancePreferences(int connectionTime, diff --git a/src/java.base/share/classes/java/net/SocketImpl.java b/src/java.base/share/classes/java/net/SocketImpl.java index fb6a5253b15d6..a5eb0db22c5dd 100644 --- a/src/java.base/share/classes/java/net/SocketImpl.java +++ b/src/java.base/share/classes/java/net/SocketImpl.java @@ -357,6 +357,9 @@ void reset() { * bandwidth * * @since 1.5 + * + * @deprecated This function has always been a no-op. + * It is deprecated for removal without any replacement. */ @Deprecated(since = "26", forRemoval = true) protected void setPerformancePreferences(int connectionTime, From c9384b09ba995811f238e049e195d5dda13adc46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Volkan=20Yaz=C4=B1c=C4=B1?= Date: Tue, 4 Nov 2025 20:59:06 +0100 Subject: [PATCH 3/3] Shorten `@deprecated` message --- src/java.base/share/classes/java/net/ServerSocket.java | 4 ++-- src/java.base/share/classes/java/net/Socket.java | 4 ++-- src/java.base/share/classes/java/net/SocketImpl.java | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/java.base/share/classes/java/net/ServerSocket.java b/src/java.base/share/classes/java/net/ServerSocket.java index 100b071e005a1..21061c2dae1c6 100644 --- a/src/java.base/share/classes/java/net/ServerSocket.java +++ b/src/java.base/share/classes/java/net/ServerSocket.java @@ -948,8 +948,8 @@ public int getReceiveBufferSize() throws SocketException { * * @since 1.5 * - * @deprecated This function has always been a no-op. - * It is deprecated for removal without any replacement. + * @deprecated This method was intended to allow for protocols that are now + * obsolete. */ @Deprecated(since = "26", forRemoval = true) public void setPerformancePreferences(int connectionTime, diff --git a/src/java.base/share/classes/java/net/Socket.java b/src/java.base/share/classes/java/net/Socket.java index 2f9aaef99ab18..42ca5314b78e2 100644 --- a/src/java.base/share/classes/java/net/Socket.java +++ b/src/java.base/share/classes/java/net/Socket.java @@ -1854,8 +1854,8 @@ public static synchronized void setSocketImplFactory(SocketImplFactory fac) * * @since 1.5 * - * @deprecated This function has always been a no-op. - * It is deprecated for removal without any replacement. + * @deprecated This method was intended to allow for protocols that are now + * obsolete. */ @Deprecated(since = "26", forRemoval = true) public void setPerformancePreferences(int connectionTime, diff --git a/src/java.base/share/classes/java/net/SocketImpl.java b/src/java.base/share/classes/java/net/SocketImpl.java index a5eb0db22c5dd..27489aa994744 100644 --- a/src/java.base/share/classes/java/net/SocketImpl.java +++ b/src/java.base/share/classes/java/net/SocketImpl.java @@ -358,8 +358,8 @@ void reset() { * * @since 1.5 * - * @deprecated This function has always been a no-op. - * It is deprecated for removal without any replacement. + * @deprecated This method was intended to allow for protocols that are now + * obsolete. */ @Deprecated(since = "26", forRemoval = true) protected void setPerformancePreferences(int connectionTime,