java.rmi.dgc
Interface DGC

All Superinterfaces:
Remote

public interface DGC
extends Remote

The DGC implementation is used for the server side during the distributed garbage collection. This interface contains the two methods: dirty and clean. A dirty call is made when a remote reference is unmarshaled in a client. A corresponding clean call is made by client it no longer uses that remote reference. A reference to a remote object is also automatically released after so called lease period that starts after the dirty call is received. It is the client's responsibility to renew the leases, by making additional dirty calls before such leases expire.


Method Summary
 void clean(ObjID[] ids, long sequenceNum, VMID vmid, boolean strong)
          Mark the given objects as no longer used on the client side.
 Lease dirty(ObjID[] ids, long sequenceNum, Lease lease)
          Mark the given objects referecnes as used on the client side.
 

Method Detail

dirty

Lease dirty(ObjID[] ids,
            long sequenceNum,
            Lease lease)
            throws RemoteException
Mark the given objects referecnes as used on the client side.

Parameters:
ids - the ids of the used objects.
sequenceNum - the number of the call (used to detect and discard late calls).
lease - the requested lease
Returns:
the granted lease
Throws:
RemoteException

clean

void clean(ObjID[] ids,
           long sequenceNum,
           VMID vmid,
           boolean strong)
           throws RemoteException
Mark the given objects as no longer used on the client side.

Parameters:
ids - the ids of the objects that are no longer used.
sequenceNum - the number of the call (used to detect and discard late
vmid - the VMID of the client.
strong - make the "strong" clean call ("strong" calls are scheduled after the failed dirty calls).
Throws:
RemoteException