aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/rmi
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/rmi')
-rw-r--r--libjava/java/rmi/server/RMIClassLoader.java137
1 files changed, 80 insertions, 57 deletions
diff --git a/libjava/java/rmi/server/RMIClassLoader.java b/libjava/java/rmi/server/RMIClassLoader.java
index d6eb13f..cde97b0 100644
--- a/libjava/java/rmi/server/RMIClassLoader.java
+++ b/libjava/java/rmi/server/RMIClassLoader.java
@@ -1,5 +1,5 @@
-/*
- Copyright (c) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+/* RMIClassLoader.java
+ Copyright (c) 1996, 1997, 1998, 1999, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -7,7 +7,7 @@ GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
-
+
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
@@ -44,59 +44,82 @@ import java.io.DataInputStream;
import java.net.MalformedURLException;
import java.util.StringTokenizer;
-public class RMIClassLoader {
-
-static private class MyClassLoader extends ClassLoader {
-
-Class defineClass(String name, byte[] data) {
- return (defineClass(name, data, 0, data.length));
-}
-}
-static private MyClassLoader loader = new MyClassLoader();
-
-/**
- * @deprecated
- */
-public static Class loadClass(String name) throws MalformedURLException, ClassNotFoundException {
- return (loadClass(System.getProperty("java.rmi.server.codebase"), name));
-}
-
-public static Class loadClass(URL codebase, String name) throws MalformedURLException, ClassNotFoundException {
- URL u = new URL(codebase, name + ".class");
- try {
- URLConnection conn = u.openConnection();
- DataInputStream strm = new DataInputStream(conn.getInputStream());
- byte data[] = new byte[conn.getContentLength()];
- strm.readFully(data);
- return (loader.defineClass(name, data));
- }
- catch (IOException _) {
- throw new ClassNotFoundException(name);
- }
-}
-
-public static Class loadClass(String codebase, String name) throws MalformedURLException, ClassNotFoundException {
- StringTokenizer tok = new StringTokenizer(codebase, ":");
- while (tok.hasMoreTokens()) {
- try {
- return (loadClass(new URL(tok.nextToken()), name));
- }
- catch (ClassNotFoundException _) {
- // Ignore - try the next one.
- }
- }
- throw new ClassNotFoundException(name);
-}
-
-public static String getClassAnnotation(Class cl) {
- return (null); // We don't yet do this.
-}
-
-/**
- * @deprecated
- */
-public static Object getSecurityContext(ClassLoader loader) {
- throw new Error("Not implemented");
-}
+public class RMIClassLoader
+{
+
+ static private class MyClassLoader extends ClassLoader
+ {
+ /**
+ * Non-private constructor to reduce bytecode emitted.
+ */
+ MyClassLoader()
+ {
+ }
+
+ Class defineClass(String name, byte[] data)
+ {
+ return defineClass(name, data, 0, data.length);
+ }
+ }
+
+ static private MyClassLoader loader = new MyClassLoader();
+
+ /**
+ * @deprecated
+ */
+ public static Class loadClass(String name)
+ throws MalformedURLException, ClassNotFoundException
+ {
+ return loadClass(System.getProperty("java.rmi.server.codebase"), name);
+ }
+
+ public static Class loadClass(URL codebase, String name)
+ throws MalformedURLException, ClassNotFoundException
+ {
+ URL u = new URL(codebase, name + ".class");
+ try
+ {
+ URLConnection conn = u.openConnection();
+ DataInputStream strm = new DataInputStream(conn.getInputStream());
+ byte data[] = new byte[conn.getContentLength()];
+ strm.readFully(data);
+ return loader.defineClass(name, data);
+ }
+ catch (IOException _)
+ {
+ throw new ClassNotFoundException(name);
+ }
+ }
+
+ public static Class loadClass(String codebase, String name)
+ throws MalformedURLException, ClassNotFoundException
+ {
+ StringTokenizer tok = new StringTokenizer(codebase, ":");
+ while (tok.hasMoreTokens())
+ {
+ try
+ {
+ return loadClass(new URL(tok.nextToken()), name);
+ }
+ catch (ClassNotFoundException _)
+ {
+ // Ignore - try the next one.
+ }
+ }
+ throw new ClassNotFoundException(name);
+ }
+
+ public static String getClassAnnotation(Class cl)
+ {
+ return null; // We don't yet do this.
+ }
+
+ /**
+ * @deprecated
+ */
+ public static Object getSecurityContext(ClassLoader loader)
+ {
+ throw new Error("Not implemented");
+ }
}