private LoadReferenced ( string name ) : TypeWrapper | ||
name | string | |
return | TypeWrapper |
public static global::java.lang.Class LoadClass(object classLoader, Assembly assembly, string name) { try { TypeWrapper tw = null; if (classLoader == null) { tw = ClassLoaderWrapper.GetBootstrapClassLoader().LoadClassByDottedName(name); } else if (assembly != null) { AssemblyClassLoader_ acl = global::IKVM.Internal.AssemblyClassLoader.FromAssembly(assembly); tw = acl.GetLoadedClass(name); if (tw == null) { tw = acl.LoadGenericClass(name); } if (tw == null) { tw = acl.LoadReferenced(name); } if (tw == null) { throw new ClassNotFoundException(name); } } else { // this must be a GenericClassLoader tw = ((GenericClassLoader)ClassLoaderWrapper.GetClassLoaderWrapper(classLoader)).LoadClassByDottedName(name); } Tracer.Info(Tracer.ClassLoading, "Loaded class \"{0}\" from {1}", name, classLoader == null ? "boot class loader" : classLoader); return(tw.ClassObject); } catch (RetargetableJavaException x) { Tracer.Info(Tracer.ClassLoading, "Failed to load class \"{0}\" from {1}", name, classLoader == null ? "boot class loader" : classLoader); throw x.ToJava(); } }