54 public static global::java.lang.Class
loadClass(global::java.lang.ClassLoader _this,
string name,
bool resolve)
57 throw new NotImplementedException();
61 if (ClassLoaderAccessor.InvokeCheckName(_this, name) ==
false)
64 var wrapper = (RuntimeAssemblyClassLoader)
JVM.Context.
ClassLoaderFactory.GetClassLoaderWrapper(_this);
65 var tw = wrapper.LoadClass(name);
69 global::java.lang.Throwable.suppressFillInStackTrace =
true;
70 throw new global::java.lang.ClassNotFoundException(name);
74 return tw.ClassObject;
79 throw new global::java.lang.ClassNotFoundException(x.Message);
84 throw x.InnerException;
94 public static global::java.net.URL
getResource(global::java.lang.ClassLoader _this,
string name)
97 throw new NotImplementedException();
99 var wrapper = (RuntimeAssemblyClassLoader)
JVM.Context.
ClassLoaderFactory.GetClassLoaderWrapper(_this);
100 foreach (global::java.net.URL url in wrapper.GetResources(name))
107 public static global::java.util.Enumeration
getResources(global::java.lang.ClassLoader _this,
string name)
110 throw new NotImplementedException();
112 return new global::ikvm.runtime.EnumerationWrapper(((RuntimeAssemblyClassLoader)
JVM.Context.
ClassLoaderFactory.GetClassLoaderWrapper(_this)).GetResources(name));
116 public static global::java.net.URL
findResource(global::java.lang.ClassLoader _this,
string name)
119 throw new NotImplementedException();
121 var wrapper = (RuntimeAssemblyClassLoader)
JVM.Context.
ClassLoaderFactory.GetClassLoaderWrapper(_this);
122 foreach (global::java.net.URL url in wrapper.FindResources(name))
131 public static global::java.util.Enumeration
findResources(global::java.lang.ClassLoader _this,
string name)
134 throw new NotImplementedException();
136 return new global::ikvm.runtime.EnumerationWrapper(((RuntimeAssemblyClassLoader)
JVM.Context.
ClassLoaderFactory.GetClassLoaderWrapper(_this)).FindResources(name));
168 static string GetAttributeValue(global::java.util.jar.Attributes.Name name, global::java.util.jar.Attributes first, global::java.util.jar.Attributes second)
212 throw new NotImplementedException();
214 var wrapper = (RuntimeAssemblyClassLoader)
JVM.Context.
ClassLoaderFactory.GetClassLoaderWrapper(_this);
215 var sealBase = GetCodeBase(wrapper.MainAssembly);
217 foreach (var packages
in wrapper.GetPackageInfo())
220 var manifest = packages.Key !=
null ? GetManifestForAssemblyJar(wrapper.MainAssembly, packages.Key) :
null;
223 var mainAttributes = manifest?.getMainAttributes();
226 foreach (var name
in packages.Value)
228 if (_this.getPackage(name) !=
null)
232 var packageAttributes = manifest?.getAttributes(name.Replace(
'.',
'/') +
'/');
237 GetAttributeValue(global::java.util.jar.Attributes.Name.SPECIFICATION_TITLE, packageAttributes, mainAttributes),
238 GetAttributeValue(global::java.util.jar.Attributes.Name.SPECIFICATION_VERSION, packageAttributes, mainAttributes),
239 GetAttributeValue(global::java.util.jar.Attributes.Name.SPECIFICATION_VENDOR, packageAttributes, mainAttributes),
240 GetAttributeValue(global::java.util.jar.Attributes.Name.IMPLEMENTATION_TITLE, packageAttributes, mainAttributes),
241 GetAttributeValue(global::java.util.jar.Attributes.Name.IMPLEMENTATION_VERSION, packageAttributes, mainAttributes),
242 GetAttributeValue(global::java.util.jar.Attributes.Name.IMPLEMENTATION_VENDOR, packageAttributes, mainAttributes),
243 string.Equals(GetAttributeValue(global::java.util.jar.Attributes.Name.SEALED, packageAttributes, mainAttributes),
"true", StringComparison.OrdinalIgnoreCase) ? sealBase :
null);