This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push:
new 8278c1c80d Refactor to avoid use of Hashtable. No functional change.
8278c1c80d is described below
commit 8278c1c80df394365af5559166bf675edd294555
Author: Mark Thomas <[email protected]>
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: [email protected]
For additional commands, e-mail: [email protected]