@Override public Class<?> findClass(final String name) throws ClassNotFoundException { try { final Class<?> loaded = super.findLoadedClass(name); if (loaded != null) { return loaded; } // first try to use the URLClassLoader findClass return super.findClass(name); } catch (final ClassNotFoundException e) { // if that fails, we ask our real parent classloader to load the class (we give up) return this.realParent.loadClass(name); } } }
public Class<?> findExistingClass(String name) { return super.findLoadedClass(name); } }
public boolean isLoaded(String clz) { return super.findLoadedClass(clz) != null; } }
public Class<?> findAlreadyLoadedClass(final String name) { return super.findLoadedClass(name); }
public boolean isLoaded(String clz) { return super.findLoadedClass(clz) != null; } }
public Class<?> findAlreadyLoadedClass(final String name) { return super.findLoadedClass(name); }
public Class<?> findLoadedClassInModule(String name) { return super.findLoadedClass(name); }
public Class<?> loadClassInModule(String name) throws ClassNotFoundException { Class<?> loaded = super.findLoadedClass(name); if (loaded != null) return loaded; return super.loadClass(name); // first try to use the URLClassLoader findClass }
@Override public Class<?> findClass(String name) throws ClassNotFoundException { try { // Attempt to reuse any classes which have already been loaded Class<?> loadedClass = super.findLoadedClass(name); if (loadedClass != null) { return loadedClass; } return super.findClass(name); } catch (ClassNotFoundException e) { return parentClassLoader.loadClass(name); } } }
@Override public Class<?> loadClass(String name) throws ClassNotFoundException { if (!blacklist.stream().anyMatch(name::startsWith) && packages.stream().anyMatch(name::startsWith)) { //to prevent loading a class twice, we have to check, if the class is already loaded. Class<?> cls = super.findLoadedClass(name); if (cls != null) { return cls; } return super.findClass(name); } /* * the super implementation of this method first uses the parent classloader to load a class. In case the * requested class is already loaded, it is loaded using the parent. */ return super.loadClass(name); }
/** * Find the loaded class in this loader or any of its extension loaders. */ protected Class findLoadedClassAll(String name) { for (int i=0; i < loaders.length; i++) { Class result = null; if (loaders[i] == this) result = super.findLoadedClass(name); else result = loaders[i].findLoadedClassAll(name); if (result != null) return result; } return null; }
Class<?> c = super.findLoadedClass(name); if (c != null) { return c;
Class<?> c = super.findLoadedClass(name); if (c != null) { return c;
Class<?> c = super.findLoadedClass(name); if (c != null) { return c;
@Override public Class<?> findClass(String name) throws ClassNotFoundException { Class<?> loaded = super.findLoadedClass(name); if (loaded != null) return loaded;
Class<?> clazz = super.findLoadedClass(name);
protected Class<?> findClass(final String name, Function<String,URL> classBytesFinder) throws ClassNotFoundException { final Class<?> existingClass = super.findLoadedClass(name); if (existingClass != null) { LOGGER.trace(CLASSLOADING, "Found existing class {}", name);
public Class<?> findLoadedClassLocalMethodology(String name) throws ClassNotFoundException { Class pl = findLoadedClassByName(name); if (pl != null) return pl; for (ClassLoader cl : getClassLoadersToSearch(true)) { Class<?> result = callProtectedMethodNullOnUncheck(cl, "findLoadedClass", name); if (isSomething(result)) return rememberClass(name, result); } return rememberClass(name, super.findLoadedClass(name)); }