    All Packages  Class Hierarchy  This Package  Previous  Next  Index

# Interface java.rmi.server.RemoteRef

public interface RemoteRef
extends Externalizable

RemoteRef represents the handle for a remote object.

##

packagePrefix
  Find server package prefix: assumes that the implementation of server ref classes (e.g., UnicastRef, UnicastServerRef) are located in the package defined by the prefix.

##

done(RemoteCall)
  Allows the remote reference to clean up (or reuse) the connection.
getRefClass(ObjectOutput)
  Returns the class name of the ref type to be serialized onto the stream 'out'.
invoke(RemoteCall)
  Executes the remote call.
newCall(RemoteObject, Operation[], int, long)
  Creates an appropriate call object for a new remote method invocation on this object.
remoteEquals(RemoteRef)
  Compares two remote objects for equality.
remoteHashCode()
  Returns a hashcode for a remote object.
remoteToString()
  Returns a String that represents the reference of this remote object.

##

packagePrefix

     public static final String packagePrefix

  Find server package prefix: assumes that the implementation of server ref classes (e.g., UnicastRef, UnicastServerRef) are located in the package defined by the prefix.

##

newCall

     public abstract RemoteCall newCall(RemoteObject obj,
                                        Operation op[],
                                        int opnum,
                                        long hash) throws RemoteException

  Creates an appropriate call object for a new remote method invocation on this object. Passing operation array and index, allows the stubs generator to assign the operation indexes and interpret them. The remote reference may need the operation to encode in the call.

  Throws: RemoteException
    if registry could not be contacted.

invoke

     public abstract void invoke(RemoteCall call) throws Exception

  Executes the remote call. Invoke will raise any "user" exceptions which should pass through and not be caught by the stub. If any exception is raised during the remote invocation, invoke should take care of cleaning up the connection before raising the "user" or remote exception.

  Throws: Exception
    if a general exception occurs.

done

     public abstract void done(RemoteCall call) throws RemoteException

  Allows the remote reference to clean up (or reuse) the connection. Done should only be called if the invoke returns successfully (non-exceptionally) to the stub.

  Throws: RemoteException
    if registry could not be contacted.

getRefClass

     public abstract String getRefClass(ObjectOutput out)

  Returns the class name of the ref type to be serialized onto the stream 'out'.

remoteHashCode

     public abstract int remoteHashCode()

  Returns a hashcode for a remote object. Two remote object stubs that refer to the same remote object will have the same hash code (in order to support remote objects as keys in hash tables).

  See Also:
    Hashtable

remoteEquals

     public abstract boolean remoteEquals(RemoteRef obj)

  Compares two remote objects for equality. Returns a boolean that indicates whether this remote object is equivalent to the specified Object. This method is used when a remote object is stored in a hashtable.

  Parameters:
    obj - the Object to compare with
  Returns:
    true if these Objects are equal; false otherwise.
  See Also:
    Hashtable

remoteToString

     public abstract String remoteToString()

  Returns a String that represents the reference of this remote object.

    All Packages  Class Hierarchy  This Package  Previous  Next  Index

Submit a bug or feature - Version 1.1.8 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1995-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.