|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectedu.rit.m2mi.Handle
edu.rit.m2mi.Omnihandle
public class Omnihandle
Class Omnihandle is the base class for all M2MI omnihandle objects. An actual omnihandle class is a synthesized subclass of class Omnihandle which implements the handle's target interface. Calling a target interface method on an omnihandle object causes M2MI invocations to be performed on the target object or objects to which the omnihandle refers, namely all objects that have been exported as the omnihandle's target interface or a subinterface thereof.
While instances of class Omnihandle can be constructed, this is intended only for use during object serialization. When a synthesized omnihandle is serialized into an object output stream, the synthesized omnihandle replaces itself in the stream with an instance of class Omnihandle containing the same EOID and target interface. When an instance of class Omnihandle is deserialized from an object input stream, the omnihandle synthesizes the proper subclass, creates an instance of the synthesized subclass containing the same EOID and target interface, and replaces itself with the subclass instance. In this way omnihandle objects can be transported across the network without needing to transport the synthesized subclasses.
Field Summary |
---|
Fields inherited from class edu.rit.m2mi.Handle |
---|
myEoid, myInvocationFactory, myTargetInterface |
Constructor Summary | |
---|---|
Omnihandle()
Construct a new omnihandle. |
|
Omnihandle(Eoid theEoid,
Class theTargetInterface)
Construct a new omnihandle with the given EOID and target interface. |
Method Summary | |
---|---|
boolean |
equals(Object theObject)
Determine if this omnihandle is equal to the given object. |
int |
hashCode()
Returns a hash code for this omnihandle. |
boolean |
invokes(Object theObject)
Determine if a method invocation on this omnihandle will be executed by the given object. |
Iterator |
iterator()
Obtain an iterator for visiting the objects associated with this omnihandle. |
void |
readExternal(ObjectInput theObjectInput)
Read this omnihandle from the given object input stream. |
String |
toString()
Returns a string version of this omnihandle. |
void |
writeExternal(ObjectOutput theObjectOutput)
Write this omnihandle to the given object output stream. |
Methods inherited from class edu.rit.m2mi.Handle |
---|
getEoid, getInterface, getInterfaceName, isExportedEoid, isExportedInterface, iteratorEoid, iteratorInterface, setEoid, setInvocationFactory, setTargetInterface |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public Omnihandle()
public Omnihandle(Eoid theEoid, Class theTargetInterface)
theEoid
- EOID.theTargetInterface
- Target interface.Method Detail |
---|
public boolean invokes(Object theObject)
invokes
in class Handle
theObject
- Object to test.
public Iterator iterator()
iterator
in class Handle
public void writeExternal(ObjectOutput theObjectOutput) throws IOException
writeExternal
in interface Externalizable
writeExternal
in class Handle
theObjectOutput
- Object output stream.
IOException
- Thrown if an I/O error occurred.public void readExternal(ObjectInput theObjectInput) throws ClassNotFoundException, IOException
readExternal
in interface Externalizable
readExternal
in class Handle
theObjectInput
- Object input stream.
ClassNotFoundException
- Thrown if the class for an object being deserialized cannot be found.
IOException
- Thrown if an I/O error occurred.public boolean equals(Object theObject)
equals
in class Object
theObject
- Object to test.
public int hashCode()
hashCode
in class Object
public String toString()
toString
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |