ef87438639
* java/lang/natVMClassLoader.cc (getSystemClassLoaderInternal): Updated for name change. (nativeFindClass): New method. (loadClass): Use nativeFindClass. * java/lang/natClassLoader.cc (_Jv_FindClass): Use single-argument form of loadClass. * java/lang/VMClassLoader.java (tried_libraries, lib_control, LIB_FULL, LIB_CACHE, LIB_NEVER): New fields from old VMClassLoader. (initialize): New method. (nativeFindClass): Declare. * gnu/gcj/runtime/natVMClassLoader.cc: Removed. * gnu/gcj/runtime/VMClassLoader.java: Removed. * gnu/gcj/runtime/ExtensionClassLoader.java: Renamed from VMClassLoader.java. (definePackageForNative): Removed. (tried_libraries, LIB_CACHE, LIB_FULL, LIB_NEVER, lib_control): Moved to VMClassLoader.java. * prims.cc (_Jv_CreateJavaVM): Updated for renaming. * Makefile.am (gnu/gcj/runtime/ExtensionClassLoader.h): Renamed. (ordinary_java_source_files): Added ExtensionClassLoader.java, removed VMClassLoader.java. (nat_source_files): Removed natVMClassLoader.cc. From-SVN: r97414
41 lines
1.1 KiB
Java
41 lines
1.1 KiB
Java
/* Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005 Free Software Foundation
|
|
|
|
This file is part of libgcj.
|
|
|
|
This software is copyrighted work licensed under the terms of the
|
|
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
|
|
details. */
|
|
|
|
/* Author: Kresten Krab Thorup <krab@gnu.org> */
|
|
|
|
package gnu.gcj.runtime;
|
|
|
|
import java.net.URL;
|
|
|
|
// The extension loader for libgcj. Class loader bootstrap is a bit
|
|
// tricky, see prims.cc and SystemClassLoader for some details.
|
|
public final class ExtensionClassLoader extends HelperClassLoader
|
|
{
|
|
private ExtensionClassLoader ()
|
|
{
|
|
}
|
|
|
|
private void init()
|
|
{
|
|
addDirectoriesFromProperty("java.ext.dirs");
|
|
}
|
|
|
|
// This can be package-private because we only call it from native
|
|
// code during startup.
|
|
static void initialize ()
|
|
{
|
|
instance.init();
|
|
system_instance.init();
|
|
}
|
|
|
|
// The only ExtensionClassLoader that can exist.
|
|
static ExtensionClassLoader instance = new ExtensionClassLoader();
|
|
// The system class loader.
|
|
static SystemClassLoader system_instance = new SystemClassLoader(instance);
|
|
}
|