/** * Resolves class file name from class name by replacing dot's with '/' separator * and adding class extension at the end. If array, component type is returned. */ public static String convertClassNameToFileName(Class clazz) { if (clazz.isArray()) { clazz = clazz.getComponentType(); } return convertClassNameToFileName(clazz.getName()); }
/** * Opens a class of the specified name for reading. No specific classloader is used * for loading class. * @see #getResourceAsStream(String, ClassLoader) */ public static InputStream getClassAsStream(final String className) throws IOException { return getResourceAsStream(ClassUtil.convertClassNameToFileName(className)); }
/** * Opens a class of the specified name for reading using provided class loader. */ public static InputStream getClassAsStream(final String className, final ClassLoader classLoader) throws IOException { return getResourceAsStream(ClassUtil.convertClassNameToFileName(className), classLoader); }
/** * Opens a class of the specified name for reading using class classloader. * @see #getResourceAsStream(String, ClassLoader) */ public static InputStream getClassAsStream(final Class clazz) throws IOException { return getResourceAsStream(ClassUtil.convertClassNameToFileName(clazz), clazz.getClassLoader()); }
@Test void testClassFileName() { assertEquals("jodd/util/ClassLoaderUtilTest.class", ClassUtil.convertClassNameToFileName(ClassLoaderUtilTest.class)); assertEquals("jodd/util/ClassLoaderUtilTest.class", ClassUtil.convertClassNameToFileName(ClassLoaderUtilTest[].class)); assertEquals("jodd/util/ClassLoaderUtilTest$Boo.class", ClassUtil.convertClassNameToFileName(Boo.class)); assertEquals("jodd/util/ClassLoaderUtilTest.class", ClassUtil.convertClassNameToFileName(ClassLoaderUtilTest.class.getName())); assertEquals("jodd/util/ClassLoaderUtilTest$Boo.class", ClassUtil.convertClassNameToFileName(Boo.class.getName())); }
/** * Resolves class file name from class name by replacing dot's with '/' separator * and adding class extension at the end. If array, component type is returned. */ public static String convertClassNameToFileName(Class clazz) { if (clazz.isArray()) { clazz = clazz.getComponentType(); } return convertClassNameToFileName(clazz.getName()); }
/** * Opens a class of the specified name for reading using class classloader. * @see #getResourceAsStream(String, ClassLoader) */ public static InputStream getClassAsStream(final Class clazz) throws IOException { return getResourceAsStream(ClassUtil.convertClassNameToFileName(clazz), clazz.getClassLoader()); }
/** * Opens a class of the specified name for reading using provided class loader. */ public static InputStream getClassAsStream(final String className, final ClassLoader classLoader) throws IOException { return getResourceAsStream(ClassUtil.convertClassNameToFileName(className), classLoader); }
/** * Opens a class of the specified name for reading. No specific classloader is used * for loading class. * @see #getResourceAsStream(String, ClassLoader) */ public static InputStream getClassAsStream(final String className) throws IOException { return getResourceAsStream(ClassUtil.convertClassNameToFileName(className)); }