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/09 18:22:04 UTC

[tomcat] branch 9.0.x updated: Clean-up. No functional change.

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

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


The following commit(s) were added to refs/heads/9.0.x by this push:
     new 34480116f0 Clean-up. No functional change.
34480116f0 is described below

commit 34480116f001af8348a044bda563dfdbb0363b34
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Wed Mar 30 11:58:32 2022 +0100

    Clean-up. No functional change.
---
 java/org/apache/naming/factory/BeanFactory.java    | 96 +++++++---------------
 .../apache/naming/factory/LocalStrings.properties  |  5 ++
 2 files changed, 33 insertions(+), 68 deletions(-)

diff --git a/java/org/apache/naming/factory/BeanFactory.java b/java/org/apache/naming/factory/BeanFactory.java
index 6bf93528b2..7a42991b05 100644
--- a/java/org/apache/naming/factory/BeanFactory.java
+++ b/java/org/apache/naming/factory/BeanFactory.java
@@ -35,6 +35,7 @@ import javax.naming.Reference;
 import javax.naming.spi.ObjectFactory;
 
 import org.apache.naming.ResourceRef;
+import org.apache.naming.StringManager;
 
 /**
  * Object factory for any Resource conforming to the JavaBean spec.
@@ -87,23 +88,9 @@ import org.apache.naming.ResourceRef;
  *
  * @author Aner Perez [aner at ncstech.com]
  */
-public class BeanFactory
-    implements ObjectFactory {
-
-    // ----------------------------------------------------------- Constructors
-
-
-    // -------------------------------------------------------------- Constants
-
-
-    // ----------------------------------------------------- Instance Variables
-
-
-    // --------------------------------------------------------- Public Methods
-
-
-    // -------------------------------------------------- ObjectFactory Methods
+public class BeanFactory implements ObjectFactory {
 
+    private static final StringManager sm = StringManager.getManager(BeanFactory.class);
 
     /**
      * Create a new Bean instance.
@@ -111,34 +98,26 @@ public class BeanFactory
      * @param obj The reference object describing the Bean
      */
     @Override
-    public Object getObjectInstance(Object obj, Name name, Context nameCtx,
-                                    Hashtable<?,?> environment)
-        throws NamingException {
+    public Object getObjectInstance(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment)
+            throws NamingException {
 
         if (obj instanceof ResourceRef) {
 
             try {
-
                 Reference ref = (Reference) obj;
                 String beanClassName = ref.getClassName();
                 Class<?> beanClass = null;
-                ClassLoader tcl =
-                    Thread.currentThread().getContextClassLoader();
-                if (tcl != null) {
-                    try {
+                ClassLoader tcl = Thread.currentThread().getContextClassLoader();
+                try {
+                    if (tcl != null) {
                         beanClass = tcl.loadClass(beanClassName);
-                    } catch(ClassNotFoundException e) {
-                    }
-                } else {
-                    try {
+                    } else {
                         beanClass = Class.forName(beanClassName);
-                    } catch(ClassNotFoundException e) {
-                        e.printStackTrace();
                     }
-                }
-                if (beanClass == null) {
-                    throw new NamingException
-                        ("Class not found: " + beanClassName);
+                } catch(ClassNotFoundException cnfe) {
+                    NamingException ne = new NamingException(sm.getString("beanFactory.classNotFound", beanClassName));
+                    ne.initCause(cnfe);
+                    throw ne;
                 }
 
                 BeanInfo bi = Introspector.getBeanInfo(beanClass);
@@ -174,8 +153,7 @@ public class BeanFactory
                                          param.substring(1);
                         }
                         try {
-                            forced.put(param,
-                                       beanClass.getMethod(setterName, paramTypes));
+                            forced.put(param, beanClass.getMethod(setterName, paramTypes));
                         } catch (NoSuchMethodException|SecurityException ex) {
                             throw new NamingException
                                 ("Forced String setter " + setterName +
@@ -219,7 +197,7 @@ public class BeanFactory
                     }
 
                     int i = 0;
-                    for (i = 0; i<pda.length; i++) {
+                    for (i = 0; i < pda.length; i++) {
 
                         if (pda[i].getName().equals(propName)) {
 
@@ -227,58 +205,41 @@ public class BeanFactory
 
                             if (propType.equals(String.class)) {
                                 valueArray[0] = value;
-                            } else if (propType.equals(Character.class)
-                                       || propType.equals(char.class)) {
-                                valueArray[0] =
-                                    Character.valueOf(value.charAt(0));
-                            } else if (propType.equals(Byte.class)
-                                       || propType.equals(byte.class)) {
+                            } else if (propType.equals(Character.class) || propType.equals(char.class)) {
+                                valueArray[0] = Character.valueOf(value.charAt(0));
+                            } else if (propType.equals(Byte.class) || propType.equals(byte.class)) {
                                 valueArray[0] = Byte.valueOf(value);
-                            } else if (propType.equals(Short.class)
-                                       || propType.equals(short.class)) {
+                            } else if (propType.equals(Short.class) || propType.equals(short.class)) {
                                 valueArray[0] = Short.valueOf(value);
-                            } else if (propType.equals(Integer.class)
-                                       || propType.equals(int.class)) {
+                            } else if (propType.equals(Integer.class) || propType.equals(int.class)) {
                                 valueArray[0] = Integer.valueOf(value);
-                            } else if (propType.equals(Long.class)
-                                       || propType.equals(long.class)) {
+                            } else if (propType.equals(Long.class) || propType.equals(long.class)) {
                                 valueArray[0] = Long.valueOf(value);
-                            } else if (propType.equals(Float.class)
-                                       || propType.equals(float.class)) {
+                            } else if (propType.equals(Float.class) || propType.equals(float.class)) {
                                 valueArray[0] = Float.valueOf(value);
-                            } else if (propType.equals(Double.class)
-                                       || propType.equals(double.class)) {
+                            } else if (propType.equals(Double.class) || propType.equals(double.class)) {
                                 valueArray[0] = Double.valueOf(value);
-                            } else if (propType.equals(Boolean.class)
-                                       || propType.equals(boolean.class)) {
+                            } else if (propType.equals(Boolean.class) || propType.equals(boolean.class)) {
                                 valueArray[0] = Boolean.valueOf(value);
                             } else {
-                                throw new NamingException
-                                    ("String conversion for property " + propName +
-                                     " of type '" + propType.getName() +
-                                     "' not available");
+                                throw new NamingException(
+                                        sm.getString("beanFactory.noStringConversion", propName, propType.getName()));
                             }
 
                             Method setProp = pda[i].getWriteMethod();
                             if (setProp != null) {
                                 setProp.invoke(bean, valueArray);
                             } else {
-                                throw new NamingException
-                                    ("Write not allowed for property: "
-                                     + propName);
+                                throw new NamingException(sm.getString("beanFactory.readOnlyProperty", propName));
                             }
 
                             break;
-
                         }
-
                     }
 
                     if (i == pda.length) {
-                        throw new NamingException
-                            ("No set method found for property: " + propName);
+                        throw new NamingException(sm.getString("beanFactory.noSetMethod", propName));
                     }
-
                 }
 
                 return bean;
@@ -303,6 +264,5 @@ public class BeanFactory
         } else {
             return null;
         }
-
     }
 }
diff --git a/java/org/apache/naming/factory/LocalStrings.properties b/java/org/apache/naming/factory/LocalStrings.properties
index 692cef2eb2..a4d1d570f7 100644
--- a/java/org/apache/naming/factory/LocalStrings.properties
+++ b/java/org/apache/naming/factory/LocalStrings.properties
@@ -13,6 +13,11 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+beanFactory.classNotFound=Class not found: [{0}]
+beanFactory.noSetMethod=No set method found for property [{0}]
+beanFactory.noStringConversion=String conversion for property [{0}] of type [{1}] not available
+beanFactory.readOnlyProperty=Write not allowed for property [{0}]
+
 dataSourceLinkFactory.badWrapper=Not a wrapper for type [{0}]
 
 factoryBase.factoryClassError=Could not load resource factory class


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