All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class sun.server.util.Ref

java.lang.Object
   |
   +----sun.server.util.Ref

public abstract class Ref
extends Object
A "Ref" is an indirect reference to an object that the garbage collector knows about. An application should override the reconstitute() method with one that will construct the object based on information in the Ref, often by reading from a file. The get() method retains a cache of the result of the last call to reconstitute() in the Ref. When space gets tight, the garbage collector will clear old Ref cache entries when there are no other pointers to the object. In normal usage, Ref will always be subclassed. The subclass will add the instance variables necessary for the reconstitute() method to work. It will also add a constructor to set them up, and write a version of reconstitute().


Constructor Index

 o Ref()
Constructs a new Ref.

Method Index

 o check()
Checks to see what object is being pointed at by this Ref and returns it.
 o flush()
Flushes the cached object.
 o get()
Returns a pointer to the object referenced by this Ref.
 o reconstitute()
Returns a pointer to the object referenced by this Ref by reconstituting it from some external source (such as a file).
 o setThing(Object)
Sets the thing to the specified object.

Constructors

 o Ref
 public Ref()
Constructs a new Ref.

Methods

 o get
 public Object get()
Returns a pointer to the object referenced by this Ref. If the object has been thrown away by the garbage collector, it will be reconstituted. This method does everything necessary to ensure that the garbage collector throws things away in Least Recently Used(LRU) order. Applications should never override this method. The get() method effectively caches calls to reconstitute().

 o reconstitute
 public abstract Object reconstitute()
Returns a pointer to the object referenced by this Ref by reconstituting it from some external source (such as a file). This method should not bother with caching since the method get() will deal with that.

In normal usage, Ref will always be subclassed. The subclass will add the instance variables necessary for reconstitute() to work. It will also add a constructor to set them up, and write a version of reconstitute().

 o flush
 public void flush()
Flushes the cached object. Forces the next invocation of get() to invoke reconstitute().

 o setThing
 public void setThing(Object thing)
Sets the thing to the specified object.

Parameters:
thing - the specified object
 o check
 public Object check()
Checks to see what object is being pointed at by this Ref and returns it.


All Packages  Class Hierarchy  This Package  Previous  Next  Index