Mega Code Archive

 
Categories / Java / Reflection
 

Attempt to find the given className within any of the packages

/*  * Copyright 2008 Ayman Al-Sairafi ayman.alsairafi@gmail.com  *  * Licensed under the Apache License, Version 2.0 (the "License");  * you may not use this file except in compliance with the License.  * You may obtain a copy of the License  *       at http://www.apache.org/licenses/LICENSE-2.0  * Unless required by applicable law or agreed to in writing, software  * distributed under the License is distributed on an "AS IS" BASIS,  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  * See the License for the specific language governing permissions and  * limitations under the License.  */ //package jsyntaxpane.util; import java.io.File; import java.io.IOException; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Member; import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.net.URL; import java.util.ArrayList; import java.util.Enumeration; import java.util.HashMap; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; /**  * Reflection Utility methods  *   * @author Ayman Al-Sairafi  */ public class ReflectUtils {      /**      * Attempt to find the given className within any of the packages.      * If the class is not found, then null is returned      * @param className Fully or partially qualified classname within any of the packages      * @param packages List of packages for search      * @return CLass object or null if not found.      */     public static Class findClass(String className, List<String> packages) {         try {             return Class.forName(className);         } catch (ClassNotFoundException ex) {         } catch (NoClassDefFoundError ex) {         }         for (String pack : packages) {             try {                 return Class.forName(pack + "." + className);             } catch (ClassNotFoundException ex) {             } catch (NoClassDefFoundError ex) {             }         }         return null;     } }