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 / MarshalInputStream.class (.txt) < prev    next >
Encoding:
Java Class File  |  1998-04-23  |  1.6 KB  |  49 lines

  1. package sun.rmi.server;
  2.  
  3. import java.io.IOException;
  4. import java.io.InputStream;
  5. import java.io.ObjectInputStream;
  6. import java.io.ObjectStreamClass;
  7. import java.io.StreamCorruptedException;
  8. import java.net.MalformedURLException;
  9. import java.net.URL;
  10. import sun.rmi.transport.Utils;
  11.  
  12. public class MarshalInputStream extends ObjectInputStream {
  13.    private static boolean codebaseonly = Utils.getBoolean("java.rmi.server.useCodebaseOnly");
  14.  
  15.    public MarshalInputStream(InputStream var1) throws IOException, StreamCorruptedException {
  16.       super(var1);
  17.    }
  18.  
  19.    protected Class resolveClass(ObjectStreamClass var1) throws IOException, ClassNotFoundException {
  20.       Object var2 = ((ObjectInputStream)this).readObject();
  21.  
  22.       try {
  23.          return super.resolveClass(var1);
  24.       } catch (ClassNotFoundException var9) {
  25.          String var4 = var1.getName();
  26.          Object var5 = null;
  27.          Object var6 = null;
  28.  
  29.          try {
  30.             if (!codebaseonly && var2 != null && var2 instanceof String) {
  31.                String var11 = (String)var2;
  32.                URL var7 = new URL(var11);
  33.                var10 = RMIClassLoader.getClassLoader(var7);
  34.             } else {
  35.                var10 = RMIClassLoader.getLocalLoader();
  36.             }
  37.          } catch (MalformedURLException var8) {
  38.             throw new IOException("Malformed URL " + var6);
  39.          }
  40.  
  41.          if (var10 != null) {
  42.             return var10.loadClass(var4);
  43.          } else {
  44.             throw var9;
  45.          }
  46.       }
  47.    }
  48. }
  49.