home *** CD-ROM | disk | FTP | other *** search
/ PC Pro 1999 April / DPPCPRO0499.ISO / April / Notes / 50b2wic.exe / DATA1.CAB / NotesProgramFilesJavaSupport / rt.jar / sun / rmi / server / RMIClassLoader.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-04-23  |  2.0 KB  |  71 lines

  1. package sun.rmi.server;
  2.  
  3. import java.net.MalformedURLException;
  4. import java.net.URL;
  5. import java.rmi.RMISecurityException;
  6. import java.util.Hashtable;
  7. import sun.applet.AppletClassLoader;
  8.  
  9. public class RMIClassLoader extends AppletClassLoader {
  10.    private static Hashtable classloaders = new Hashtable();
  11.    private static boolean loaderenabled = true;
  12.    private static RMIClassLoader localloader = null;
  13.    private static boolean initlocalloader = true;
  14.  
  15.    static synchronized void flushClassLoader(URL var0) {
  16.       classloaders.remove(var0);
  17.    }
  18.  
  19.    public static synchronized RMIClassLoader getClassLoader(URL var0) {
  20.       if (System.getSecurityManager() == null) {
  21.          throw new RMISecurityException("No security manager, stub class loader disabled");
  22.       } else {
  23.          RMIClassLoader var1 = (RMIClassLoader)classloaders.get(var0);
  24.          if (var1 == null && loaderenabled) {
  25.             try {
  26.                var1 = new RMIClassLoader(var0);
  27.                classloaders.put(var0, var1);
  28.             } catch (Exception var2) {
  29.                loaderenabled = false;
  30.             }
  31.          }
  32.  
  33.          return var1;
  34.       }
  35.    }
  36.  
  37.    public static synchronized RMIClassLoader getLocalLoader() throws MalformedURLException {
  38.       if (initlocalloader) {
  39.          initlocalloader = false;
  40.          URL var0 = new URL("file:");
  41.  
  42.          try {
  43.             String var1 = System.getProperty("java.rmi.server.codebase");
  44.             if (var1 != null && var1.length() != 0) {
  45.                URL var2 = new URL(var0, var1);
  46.                if (System.getSecurityManager() == null) {
  47.                   throw new RMISecurityException("No security manager, stub class loader disabled");
  48.                }
  49.  
  50.                localloader = new RMIClassLoader(var2);
  51.             }
  52.          } catch (MalformedURLException var3) {
  53.          }
  54.       }
  55.  
  56.       return localloader;
  57.    }
  58.  
  59.    public URL getCodeBase() {
  60.       return super.getCodeBase();
  61.    }
  62.  
  63.    private RMIClassLoader(URL var1) {
  64.       super(var1);
  65.    }
  66.  
  67.    public Class loadClass(String var1) throws ClassNotFoundException {
  68.       return super.loadClass(var1, true);
  69.    }
  70. }
  71.