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

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


The following commit(s) were added to refs/heads/10.0.x by this push:
     new 29ce690251 Refactor to avoid use of Hashtable. No functional change.
29ce690251 is described below

commit 29ce690251777f13aec5876290b3e667da8bb090
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Thu Sep 15 17:04:39 2022 +0100

    Refactor to avoid use of Hashtable. No functional change.
---
 java/org/apache/naming/ContextAccessController.java |  7 ++++---
 java/org/apache/naming/ContextBindings.java         | 13 +++++++------
 2 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/java/org/apache/naming/ContextAccessController.java 
b/java/org/apache/naming/ContextAccessController.java
index 301d648eea..0fad089be5 100644
--- a/java/org/apache/naming/ContextAccessController.java
+++ b/java/org/apache/naming/ContextAccessController.java
@@ -16,7 +16,8 @@
  */
 package org.apache.naming;
 
-import java.util.Hashtable;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * Handles the access control on the JNDI contexts.
@@ -30,13 +31,13 @@ public class ContextAccessController {
     /**
      * Catalina context names on which writing is not allowed.
      */
-    private static final Hashtable<Object,Object> readOnlyContexts = new 
Hashtable<>();
+    private static final Map<Object,Object> readOnlyContexts = new 
ConcurrentHashMap<>();
 
 
     /**
      * Security tokens repository.
      */
-    private static final Hashtable<Object,Object> securityTokens = new 
Hashtable<>();
+    private static final Map<Object,Object> securityTokens = new 
ConcurrentHashMap<>();
 
 
     // --------------------------------------------------------- Public Methods
diff --git a/java/org/apache/naming/ContextBindings.java 
b/java/org/apache/naming/ContextBindings.java
index ae509b27b7..baf3ce2bdb 100644
--- a/java/org/apache/naming/ContextBindings.java
+++ b/java/org/apache/naming/ContextBindings.java
@@ -16,7 +16,8 @@
  */
 package org.apache.naming;
 
-import java.util.Hashtable;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 import javax.naming.Context;
 import javax.naming.NamingException;
@@ -42,31 +43,31 @@ public class ContextBindings {
     /**
      * Bindings object - naming context. Keyed by object.
      */
-    private static final Hashtable<Object,Context> objectBindings = new 
Hashtable<>();
+    private static final Map<Object,Context> objectBindings = new 
ConcurrentHashMap<>();
 
 
     /**
      * Bindings thread - naming context. Keyed by thread.
      */
-    private static final Hashtable<Thread,Context> threadBindings = new 
Hashtable<>();
+    private static final Map<Thread,Context> threadBindings = new 
ConcurrentHashMap<>();
 
 
     /**
      * Bindings thread - object. Keyed by thread.
      */
-    private static final Hashtable<Thread,Object> threadObjectBindings = new 
Hashtable<>();
+    private static final Map<Thread,Object> threadObjectBindings = new 
ConcurrentHashMap<>();
 
 
     /**
      * Bindings class loader - naming context. Keyed by class loader.
      */
-    private static final Hashtable<ClassLoader,Context> clBindings = new 
Hashtable<>();
+    private static final Map<ClassLoader,Context> clBindings = new 
ConcurrentHashMap<>();
 
 
     /**
      * Bindings class loader - object. Keyed by class loader.
      */
-    private static final Hashtable<ClassLoader,Object> clObjectBindings = new 
Hashtable<>();
+    private static final Map<ClassLoader,Object> clObjectBindings = new 
ConcurrentHashMap<>();
 
 
     /**


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

Reply via email to