You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2022/05/31 09:12:27 UTC

[tomcat] branch 8.5.x updated: Backport the Tomcat Native deprecation warnings

This is an automated email from the ASF dual-hosted git repository.

markt pushed a commit to branch 8.5.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/8.5.x by this push:
     new 3309333592 Backport the Tomcat Native deprecation warnings
3309333592 is described below

commit 3309333592c905c351b50ef8c1d2880f06ec2620
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Tue May 31 10:12:21 2022 +0100

    Backport the Tomcat Native deprecation warnings
    
    While not strictly necessary since the deprecated code won't be removed
    until Tomcat 10.1.x I think it is prudent to add the deprecation
    warnings here given the scale of the change.
---
 java/org/apache/catalina/connector/Connector.java  |  1 +
 java/org/apache/coyote/ProtocolHandler.java        |  3 ++
 java/org/apache/coyote/ajp/AjpAprProtocol.java     |  4 +++
 .../apache/coyote/http11/Http11AprProtocol.java    |  4 +++
 java/org/apache/tomcat/jni/Address.java            |  6 ++++
 java/org/apache/tomcat/jni/Directory.java          |  6 ++++
 java/org/apache/tomcat/jni/File.java               | 14 +++++---
 java/org/apache/tomcat/jni/FileInfo.java           |  6 ++++
 java/org/apache/tomcat/jni/Global.java             |  6 ++++
 java/org/apache/tomcat/jni/Local.java              |  6 ++++
 java/org/apache/tomcat/jni/Lock.java               |  6 ++++
 java/org/apache/tomcat/jni/Mmap.java               |  6 ++++
 java/org/apache/tomcat/jni/Multicast.java          |  6 ++++
 java/org/apache/tomcat/jni/OS.java                 | 15 ++++++--
 java/org/apache/tomcat/jni/Poll.java               |  6 ++++
 java/org/apache/tomcat/jni/PoolCallback.java       |  6 ++++
 java/org/apache/tomcat/jni/Proc.java               |  6 ++++
 java/org/apache/tomcat/jni/ProcErrorCallback.java  |  6 ++++
 java/org/apache/tomcat/jni/Procattr.java           |  6 ++++
 java/org/apache/tomcat/jni/Registry.java           |  6 ++++
 java/org/apache/tomcat/jni/SSLSocket.java          |  6 ++++
 java/org/apache/tomcat/jni/Shm.java                |  6 ++++
 java/org/apache/tomcat/jni/Sockaddr.java           |  6 ++++
 java/org/apache/tomcat/jni/Socket.java             |  6 ++++
 java/org/apache/tomcat/jni/Status.java             |  6 ++++
 java/org/apache/tomcat/jni/Stdlib.java             |  6 ++++
 java/org/apache/tomcat/jni/Thread.java             |  6 ++++
 java/org/apache/tomcat/jni/Time.java               |  6 ++++
 java/org/apache/tomcat/jni/User.java               |  6 ++++
 java/org/apache/tomcat/util/net/AprEndpoint.java   |  4 +++
 java/org/apache/tomcat/util/net/AprSSLSupport.java |  4 +++
 .../apache/tomcat/util/net/TestXxxEndpoint.java    | 40 +++++++++++++---------
 32 files changed, 205 insertions(+), 22 deletions(-)

diff --git a/java/org/apache/catalina/connector/Connector.java b/java/org/apache/catalina/connector/Connector.java
index c13b80e81c..d8bc16428c 100644
--- a/java/org/apache/catalina/connector/Connector.java
+++ b/java/org/apache/catalina/connector/Connector.java
@@ -1074,6 +1074,7 @@ public class Connector extends LifecycleMBeanBase  {
     }
 
 
+    @SuppressWarnings("deprecation")
     @Override
     protected void initInternal() throws LifecycleException {
 
diff --git a/java/org/apache/coyote/ProtocolHandler.java b/java/org/apache/coyote/ProtocolHandler.java
index a616347b19..17ed96cc92 100644
--- a/java/org/apache/coyote/ProtocolHandler.java
+++ b/java/org/apache/coyote/ProtocolHandler.java
@@ -130,7 +130,10 @@ public interface ProtocolHandler {
      *
      * @return <code>true</code> if this Protocol Handler requires the
      *         APR/native library, otherwise <code>false</code>
+     *
+     * @deprecated This method will be removed in Tomcat 10.1.x onwards
      */
+    @Deprecated
     public boolean isAprRequired();
 
 
diff --git a/java/org/apache/coyote/ajp/AjpAprProtocol.java b/java/org/apache/coyote/ajp/AjpAprProtocol.java
index 92ad9c0504..34e34ebe42 100644
--- a/java/org/apache/coyote/ajp/AjpAprProtocol.java
+++ b/java/org/apache/coyote/ajp/AjpAprProtocol.java
@@ -23,7 +23,11 @@ import org.apache.tomcat.util.net.AprEndpoint;
 
 /**
  * This the APR/native based protocol handler implementation for AJP.
+ *
+ * @deprecated  The APR/Native Connector will be removed in Tomcat 10.1.x
+ *              onwards.
  */
+@Deprecated
 public class AjpAprProtocol extends AbstractAjpProtocol<Long> {
 
     private static final Log log = LogFactory.getLog(AjpAprProtocol.class);
diff --git a/java/org/apache/coyote/http11/Http11AprProtocol.java b/java/org/apache/coyote/http11/Http11AprProtocol.java
index fc45b17df0..26b7871879 100644
--- a/java/org/apache/coyote/http11/Http11AprProtocol.java
+++ b/java/org/apache/coyote/http11/Http11AprProtocol.java
@@ -28,7 +28,11 @@ import org.apache.tomcat.util.net.AprEndpoint;
  *
  * @author Remy Maucherat
  * @author Costin Manolache
+ *
+ * @deprecated  The APR/Native Connector will be removed in Tomcat 10.1.x
+ *              onwards.
  */
+@Deprecated
 public class Http11AprProtocol extends AbstractHttp11Protocol<Long> {
 
     private static final Log log = LogFactory.getLog(Http11AprProtocol.class);
diff --git a/java/org/apache/tomcat/jni/Address.java b/java/org/apache/tomcat/jni/Address.java
index 231036778c..87eba9e5a0 100644
--- a/java/org/apache/tomcat/jni/Address.java
+++ b/java/org/apache/tomcat/jni/Address.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Address
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Address {
 
     public static final String APR_ANYADDR = "0.0.0.0";
diff --git a/java/org/apache/tomcat/jni/Directory.java b/java/org/apache/tomcat/jni/Directory.java
index 2f1f87dd56..473b87b71a 100644
--- a/java/org/apache/tomcat/jni/Directory.java
+++ b/java/org/apache/tomcat/jni/Directory.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Directory
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Directory {
 
     /**
diff --git a/java/org/apache/tomcat/jni/File.java b/java/org/apache/tomcat/jni/File.java
index 4e5a9d0e80..3e0c3b1bc7 100644
--- a/java/org/apache/tomcat/jni/File.java
+++ b/java/org/apache/tomcat/jni/File.java
@@ -21,7 +21,13 @@ import java.nio.ByteBuffer;
 /** File
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class File {
 
     /** Open the file for reading */
@@ -358,7 +364,7 @@ public class File {
      * @param thefile The file descriptor to write to.
      * @param buf The buffer which contains the data.
      * @param offset Start offset in buf
-     * @param nbytes The number of bytes to write; (-1) for full array.
+     * @param nbytes The number of bytes to write
      * @return The number of bytes written.
      */
     public static native int write(long thefile, byte[] buf, int offset, int nbytes);
@@ -399,7 +405,7 @@ public class File {
      * @param thefile The file descriptor to write to.
      * @param buf The buffer which contains the data.
      * @param offset Start offset in buf
-     * @param nbytes The number of bytes to write; (-1) for full array.
+     * @param nbytes The number of bytes to write
      * @return The number of bytes written.
      */
     public static native int writeFull(long thefile, byte[] buf, int offset, int nbytes);
@@ -468,7 +474,7 @@ public class File {
      * @param thefile The file descriptor to read from.
      * @param buf The buffer to store the data to.
      * @param offset Start offset in buf
-     * @param nbytes The number of bytes to read (-1) for full array.
+     * @param nbytes The number of bytes to read
      * @return the number of bytes read.
      */
     public static native int read(long thefile, byte[] buf,  int offset, int nbytes);
@@ -511,7 +517,7 @@ public class File {
      * @param thefile The file descriptor to read from.
      * @param buf The buffer to store the data to.
      * @param offset Start offset in buf
-     * @param nbytes The number of bytes to read (-1) for full array.
+     * @param nbytes The number of bytes to read
      * @return the number of bytes read.
      */
     public static native int readFull(long thefile, byte[] buf,  int offset, int nbytes);
diff --git a/java/org/apache/tomcat/jni/FileInfo.java b/java/org/apache/tomcat/jni/FileInfo.java
index d5aa0e08f5..34b67ff01c 100644
--- a/java/org/apache/tomcat/jni/FileInfo.java
+++ b/java/org/apache/tomcat/jni/FileInfo.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Fileinfo
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class FileInfo {
 
     /** Allocates memory and closes lingering handles in the specified pool */
diff --git a/java/org/apache/tomcat/jni/Global.java b/java/org/apache/tomcat/jni/Global.java
index a5e922818d..7da6740f88 100644
--- a/java/org/apache/tomcat/jni/Global.java
+++ b/java/org/apache/tomcat/jni/Global.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Global
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Global {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Local.java b/java/org/apache/tomcat/jni/Local.java
index 0e2fdd098c..fd0f3bb064 100644
--- a/java/org/apache/tomcat/jni/Local.java
+++ b/java/org/apache/tomcat/jni/Local.java
@@ -20,7 +20,13 @@ package org.apache.tomcat.jni;
  * Local socket.
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Local {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Lock.java b/java/org/apache/tomcat/jni/Lock.java
index 166727c25d..9803197cf3 100644
--- a/java/org/apache/tomcat/jni/Lock.java
+++ b/java/org/apache/tomcat/jni/Lock.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Lock
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Lock {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Mmap.java b/java/org/apache/tomcat/jni/Mmap.java
index aae41888f3..16a88a151d 100644
--- a/java/org/apache/tomcat/jni/Mmap.java
+++ b/java/org/apache/tomcat/jni/Mmap.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Mmap
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Mmap {
     /** MMap opened for reading */
     public static final int APR_MMAP_READ  = 1;
diff --git a/java/org/apache/tomcat/jni/Multicast.java b/java/org/apache/tomcat/jni/Multicast.java
index c983c8305a..fd090fdc2e 100644
--- a/java/org/apache/tomcat/jni/Multicast.java
+++ b/java/org/apache/tomcat/jni/Multicast.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Multicast
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Multicast {
 
     /**
diff --git a/java/org/apache/tomcat/jni/OS.java b/java/org/apache/tomcat/jni/OS.java
index f1ec767360..48f7192c9b 100644
--- a/java/org/apache/tomcat/jni/OS.java
+++ b/java/org/apache/tomcat/jni/OS.java
@@ -19,12 +19,17 @@ package org.apache.tomcat.jni;
 /** OS
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class OS {
 
     /* OS Enums */
     private static final int UNIX      = 1;
-    private static final int NETWARE   = 2;
     private static final int WIN32     = 3;
     private static final int WIN64     = 4;
     private static final int LINUX     = 5;
@@ -46,7 +51,13 @@ public class OS {
     private static native boolean is(int type);
 
     public static final boolean IS_UNIX    = is(UNIX);
-    public static final boolean IS_NETWARE = is(NETWARE);
+    /**
+     * @deprecated Hard-coded to false since there has not been a supported
+     *             Netware platform for many years.
+     *             This will be removed in Tomcat 10 onwards
+     */
+    @Deprecated
+    public static final boolean IS_NETWARE = false;
     public static final boolean IS_WIN32   = is(WIN32);
     public static final boolean IS_WIN64   = is(WIN64);
     public static final boolean IS_LINUX   = is(LINUX);
diff --git a/java/org/apache/tomcat/jni/Poll.java b/java/org/apache/tomcat/jni/Poll.java
index 112d02eb64..54f422168a 100644
--- a/java/org/apache/tomcat/jni/Poll.java
+++ b/java/org/apache/tomcat/jni/Poll.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Poll
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Poll {
 
     /**
diff --git a/java/org/apache/tomcat/jni/PoolCallback.java b/java/org/apache/tomcat/jni/PoolCallback.java
index aa42e4e699..c709979fce 100644
--- a/java/org/apache/tomcat/jni/PoolCallback.java
+++ b/java/org/apache/tomcat/jni/PoolCallback.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** PoolCallback Interface
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public interface PoolCallback {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Proc.java b/java/org/apache/tomcat/jni/Proc.java
index 545e2dd685..4ea678b6ac 100644
--- a/java/org/apache/tomcat/jni/Proc.java
+++ b/java/org/apache/tomcat/jni/Proc.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Proc
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Proc {
 
     /*
diff --git a/java/org/apache/tomcat/jni/ProcErrorCallback.java b/java/org/apache/tomcat/jni/ProcErrorCallback.java
index 9ad83cb4c0..a9421bc034 100644
--- a/java/org/apache/tomcat/jni/ProcErrorCallback.java
+++ b/java/org/apache/tomcat/jni/ProcErrorCallback.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** ProcErrorCallback Interface
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public interface ProcErrorCallback {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Procattr.java b/java/org/apache/tomcat/jni/Procattr.java
index 6400ca64cc..fef42b3496 100644
--- a/java/org/apache/tomcat/jni/Procattr.java
+++ b/java/org/apache/tomcat/jni/Procattr.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Procattr
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Procattr {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Registry.java b/java/org/apache/tomcat/jni/Registry.java
index 7726357aee..7a535f9747 100644
--- a/java/org/apache/tomcat/jni/Registry.java
+++ b/java/org/apache/tomcat/jni/Registry.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Windows Registry support
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Registry {
 
     /* Registry Enums */
diff --git a/java/org/apache/tomcat/jni/SSLSocket.java b/java/org/apache/tomcat/jni/SSLSocket.java
index c1cd328430..2e1b316ed0 100644
--- a/java/org/apache/tomcat/jni/SSLSocket.java
+++ b/java/org/apache/tomcat/jni/SSLSocket.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** SSL Socket
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class SSLSocket {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Shm.java b/java/org/apache/tomcat/jni/Shm.java
index 27e4902b43..f62d4aa39c 100644
--- a/java/org/apache/tomcat/jni/Shm.java
+++ b/java/org/apache/tomcat/jni/Shm.java
@@ -21,7 +21,13 @@ import java.nio.ByteBuffer;
 /** Shm
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Shm {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Sockaddr.java b/java/org/apache/tomcat/jni/Sockaddr.java
index dd15af887d..9d138ec36e 100644
--- a/java/org/apache/tomcat/jni/Sockaddr.java
+++ b/java/org/apache/tomcat/jni/Sockaddr.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Sockaddr
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Sockaddr {
 
    /** The pool to use... */
diff --git a/java/org/apache/tomcat/jni/Socket.java b/java/org/apache/tomcat/jni/Socket.java
index 1053da6406..781d43b418 100644
--- a/java/org/apache/tomcat/jni/Socket.java
+++ b/java/org/apache/tomcat/jni/Socket.java
@@ -22,7 +22,13 @@ import java.nio.ByteBuffer;
 /** Socket
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Socket {
 
     /* Standard socket defines */
diff --git a/java/org/apache/tomcat/jni/Status.java b/java/org/apache/tomcat/jni/Status.java
index eee9588006..004340cdae 100644
--- a/java/org/apache/tomcat/jni/Status.java
+++ b/java/org/apache/tomcat/jni/Status.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Status
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Status {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Stdlib.java b/java/org/apache/tomcat/jni/Stdlib.java
index fbc8cfd5ea..18e8fb2173 100644
--- a/java/org/apache/tomcat/jni/Stdlib.java
+++ b/java/org/apache/tomcat/jni/Stdlib.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Stdlib
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Stdlib {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Thread.java b/java/org/apache/tomcat/jni/Thread.java
index f05fdb681f..277cfb61a0 100644
--- a/java/org/apache/tomcat/jni/Thread.java
+++ b/java/org/apache/tomcat/jni/Thread.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Thread
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Thread {
 
     /**
diff --git a/java/org/apache/tomcat/jni/Time.java b/java/org/apache/tomcat/jni/Time.java
index af9107aa10..24b054020a 100644
--- a/java/org/apache/tomcat/jni/Time.java
+++ b/java/org/apache/tomcat/jni/Time.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** Time
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class Time {
 
     /** number of microseconds per second */
diff --git a/java/org/apache/tomcat/jni/User.java b/java/org/apache/tomcat/jni/User.java
index b5fadfbc48..b9a0547e89 100644
--- a/java/org/apache/tomcat/jni/User.java
+++ b/java/org/apache/tomcat/jni/User.java
@@ -19,7 +19,13 @@ package org.apache.tomcat.jni;
 /** User
  *
  * @author Mladen Turk
+ *
+ * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+ *              10.1.x / Tomcat Native 2.x onwards to only include those
+ *              components required to provide OpenSSL integration with the NIO
+ *              and NIO2 connectors.
  */
+@Deprecated
 public class User {
 
     /**
diff --git a/java/org/apache/tomcat/util/net/AprEndpoint.java b/java/org/apache/tomcat/util/net/AprEndpoint.java
index 8b89646168..c30541f950 100644
--- a/java/org/apache/tomcat/util/net/AprEndpoint.java
+++ b/java/org/apache/tomcat/util/net/AprEndpoint.java
@@ -74,7 +74,11 @@ import org.apache.tomcat.util.net.openssl.OpenSSLUtil;
  *
  * @author Mladen Turk
  * @author Remy Maucherat
+ *
+ * @deprecated  The APR/Native Connector will be removed in Tomcat 10.1.x
+ *              onwards.
  */
+@Deprecated
 public class AprEndpoint extends AbstractEndpoint<Long,Long> implements SNICallBack {
 
     // -------------------------------------------------------------- Constants
diff --git a/java/org/apache/tomcat/util/net/AprSSLSupport.java b/java/org/apache/tomcat/util/net/AprSSLSupport.java
index f36eaf4903..3262df9123 100644
--- a/java/org/apache/tomcat/util/net/AprSSLSupport.java
+++ b/java/org/apache/tomcat/util/net/AprSSLSupport.java
@@ -28,7 +28,11 @@ import org.apache.tomcat.jni.SSL;
  * <p>
  * TODO: Add a mechanism (or figure out how to use what we already have) to
  *       invalidate the session.
+ *
+ * @deprecated  The APR/Native Connector will be removed in Tomcat 10.1.x
+ *              onwards.
  */
+@Deprecated
 public class AprSSLSupport implements SSLSupport {
 
     private final AprEndpoint.AprSocketWrapper socketWrapper;
diff --git a/test/org/apache/tomcat/util/net/TestXxxEndpoint.java b/test/org/apache/tomcat/util/net/TestXxxEndpoint.java
index b355460aea..631ebe568d 100644
--- a/test/org/apache/tomcat/util/net/TestXxxEndpoint.java
+++ b/test/org/apache/tomcat/util/net/TestXxxEndpoint.java
@@ -26,10 +26,7 @@ import org.junit.Test;
 import org.apache.catalina.connector.Connector;
 import org.apache.catalina.startup.Tomcat;
 import org.apache.catalina.startup.TomcatBaseTest;
-import org.apache.tomcat.jni.Address;
-import org.apache.tomcat.jni.OS;
 import org.apache.tomcat.jni.Pool;
-import org.apache.tomcat.jni.Socket;
 
 /**
  * Test case for the Endpoint implementations. The testing framework will ensure
@@ -48,7 +45,12 @@ public class TestXxxEndpoint extends TomcatBaseTest {
         }
     }
 
-    @SuppressWarnings("deprecation")
+    /*
+     * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+     *              10.1.x onwards to only those components required to provide
+     *              OpenSSL integration with the NIO and NIO2 connectors.
+     */
+    @Deprecated
     private long createAprSocket(int port, long pool)
                  throws Exception {
         /**
@@ -59,28 +61,28 @@ public class TestXxxEndpoint extends TomcatBaseTest {
         String address = InetAddress.getByName("localhost").getHostAddress();
 
         // Create the APR address that will be bound
-        int family = Socket.APR_UNSPEC;
+        int family = org.apache.tomcat.jni.Socket.APR_UNSPEC;
 
         long inetAddress = 0;
         try {
-            inetAddress = Address.info(address, family,
+            inetAddress = org.apache.tomcat.jni.Address.info(address, family,
                                        port, 0, pool);
             // Create the APR server socket
-            serverSock = Socket.create(Address.getInfo(inetAddress).family,
-                                       Socket.SOCK_STREAM,
-                                       Socket.APR_PROTO_TCP, pool);
+            serverSock = org.apache.tomcat.jni.Socket.create(org.apache.tomcat.jni.Address.getInfo(inetAddress).family,
+                    org.apache.tomcat.jni.Socket.SOCK_STREAM,
+                    org.apache.tomcat.jni.Socket.APR_PROTO_TCP, pool);
         } catch (Exception ex) {
             log.error("Could not create socket for address '" + address + "'");
             return 0;
         }
 
-        if (OS.IS_UNIX) {
-            Socket.optSet(serverSock, Socket.APR_SO_REUSEADDR, 1);
+        if (org.apache.tomcat.jni.OS.IS_UNIX) {
+            org.apache.tomcat.jni.Socket.optSet(serverSock, org.apache.tomcat.jni.Socket.APR_SO_REUSEADDR, 1);
         }
         // Deal with the firewalls that tend to drop the inactive sockets
-        Socket.optSet(serverSock, Socket.APR_SO_KEEPALIVE, 1);
+        org.apache.tomcat.jni.Socket.optSet(serverSock, org.apache.tomcat.jni.Socket.APR_SO_KEEPALIVE, 1);
         // Bind the server socket
-        int ret = Socket.bind(serverSock, inetAddress);
+        int ret = org.apache.tomcat.jni.Socket.bind(serverSock, inetAddress);
         if (ret != 0) {
             log.error("Could not bind: " + org.apache.tomcat.jni.Error.strerror(ret));
             throw (new Exception(org.apache.tomcat.jni.Error.strerror(ret)));
@@ -88,11 +90,17 @@ public class TestXxxEndpoint extends TomcatBaseTest {
         return serverSock;
     }
 
+    /*
+     * @deprecated  The scope of the APR/Native Library will be reduced in Tomcat
+     *              10.1.x onwards to only those components required to provide
+     *              OpenSSL integration with the NIO and NIO2 connectors.
+     */
+    @Deprecated
     private void destroyAprSocket(long serverSock, long pool) {
         if (serverSock != 0) {
-            Socket.shutdown(serverSock, Socket.APR_SHUTDOWN_READWRITE);
-            Socket.close(serverSock);
-            Socket.destroy(serverSock);
+            org.apache.tomcat.jni.Socket.shutdown(serverSock, org.apache.tomcat.jni.Socket.APR_SHUTDOWN_READWRITE);
+            org.apache.tomcat.jni.Socket.close(serverSock);
+            org.apache.tomcat.jni.Socket.destroy(serverSock);
         }
 
         if (pool != 0) {


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org