package org.openslx.taskmanager.util; public class ClassLoaderHack { /** * Get Class meta-object for given class in package. Only return class if it's somehow * extending from given baseClass. * * @param packageName package to search in * @param className name of class to look for * @param baseClass class the class in question has to be extended from * @return class meta object, or null if not found */ @SuppressWarnings( "unchecked" ) public static Class getClass( String packageName, String className, Class baseClass ) { final Class clazz; try { clazz = Class.forName( packageName + '.' + className ); } catch ( ClassNotFoundException e ) { return null; } if ( clazz == null || ( baseClass != null && !baseClass.isAssignableFrom( clazz ) ) ) { return null; } return (Class)clazz; } }