edu.nyu.cs.pdsg.runtime
Class ContainerObjectInputStream

java.lang.Object
  extended byjava.io.InputStream
      extended byjava.io.ObjectInputStream
          extended byedu.nyu.cs.pdsg.runtime.ContainerObjectInputStream
All Implemented Interfaces:
java.io.DataInput, java.io.ObjectInput, java.io.ObjectStreamConstants

public class ContainerObjectInputStream
extends java.io.ObjectInputStream

This is a very simple implementation of a container object input stream which uses the ContainerClassLoader class to load in whatever class is received over the network using it.


Nested Class Summary
 
Nested classes inherited from class java.io.ObjectInputStream
java.io.ObjectInputStream.GetField
 
Field Summary
(package private)  AuthorizationMonitor authMonitor
           
static int coisDebugLevel
           
(package private)  boolean gotCodebase
           
(package private)  java.lang.String overallCodebase
           
(package private)  PermissionsAdaptor permissionsAdaptor
           
(package private)  boolean securityEnabled
           
 
Fields inherited from class java.io.ObjectInputStream
 
Fields inherited from class java.io.InputStream
 
Fields inherited from interface java.io.ObjectStreamConstants
baseWireHandle, PROTOCOL_VERSION_1, PROTOCOL_VERSION_2, SC_BLOCK_DATA, SC_EXTERNALIZABLE, SC_SERIALIZABLE, SC_WRITE_METHOD, STREAM_MAGIC, STREAM_VERSION, SUBCLASS_IMPLEMENTATION_PERMISSION, SUBSTITUTION_PERMISSION, TC_ARRAY, TC_BASE, TC_BLOCKDATA, TC_BLOCKDATALONG, TC_CLASS, TC_CLASSDESC, TC_ENDBLOCKDATA, TC_EXCEPTION, TC_LONGSTRING, TC_MAX, TC_NULL, TC_OBJECT, TC_PROXYCLASSDESC, TC_REFERENCE, TC_RESET, TC_STRING
 
Constructor Summary
ContainerObjectInputStream(java.io.InputStream in)
           
ContainerObjectInputStream(java.io.InputStream in, PermissionsAdaptor _permissionsAdaptor, AuthorizationMonitor _authMonitor)
           
 
Method Summary
private  java.lang.Class loadAllClasses(ContainerClassLoader ccl, java.lang.String name)
           
protected  java.lang.Class resolveClass(java.io.ObjectStreamClass v)
           
 void setAuthorizationMonitor(AuthorizationMonitor _authMonitor)
           
 void setPermissionsAdaptor(PermissionsAdaptor _permissionsAdaptor)
          Set both this and setAuthorizationMonitor() for security features
 
Methods inherited from class java.io.ObjectInputStream
available, close, defaultReadObject, enableResolveObject, read, read, readBoolean, readByte, readChar, readClassDescriptor, readDouble, readFields, readFloat, readFully, readFully, readInt, readLine, readLong, readObject, readObjectOverride, readShort, readStreamHeader, readUnshared, readUnsignedByte, readUnsignedShort, readUTF, registerValidation, resolveObject, resolveProxyClass, skipBytes
 
Methods inherited from class java.io.InputStream
mark, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.io.ObjectInput
read, skip
 

Field Detail

coisDebugLevel

public static final int coisDebugLevel
See Also:
Constant Field Values

authMonitor

AuthorizationMonitor authMonitor

permissionsAdaptor

PermissionsAdaptor permissionsAdaptor

securityEnabled

boolean securityEnabled

overallCodebase

java.lang.String overallCodebase

gotCodebase

boolean gotCodebase
Constructor Detail

ContainerObjectInputStream

public ContainerObjectInputStream(java.io.InputStream in)
                           throws java.lang.Exception

ContainerObjectInputStream

public ContainerObjectInputStream(java.io.InputStream in,
                                  PermissionsAdaptor _permissionsAdaptor,
                                  AuthorizationMonitor _authMonitor)
                           throws java.lang.Exception
Method Detail

resolveClass

protected java.lang.Class resolveClass(java.io.ObjectStreamClass v)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
Throws:
java.io.IOException
java.lang.ClassNotFoundException

loadAllClasses

private java.lang.Class loadAllClasses(ContainerClassLoader ccl,
                                       java.lang.String name)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
Throws:
java.io.IOException
java.lang.ClassNotFoundException

setPermissionsAdaptor

public void setPermissionsAdaptor(PermissionsAdaptor _permissionsAdaptor)
Set both this and setAuthorizationMonitor() for security features


setAuthorizationMonitor

public void setAuthorizationMonitor(AuthorizationMonitor _authMonitor)


Copyright (c) 2002-2003 New York University RLAB