imcode.util
Class LazilyLoadedObject<E extends LazilyLoadedObject.Copyable<E>>

java.lang.Object
  extended by imcode.util.LazilyLoadedObject<E>
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

public class LazilyLoadedObject<E extends LazilyLoadedObject.Copyable<E>>
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable

See Also:
Serialized Form

Nested Class Summary
static interface LazilyLoadedObject.Copyable<C extends LazilyLoadedObject.Copyable>
           
static interface LazilyLoadedObject.Loader<L extends LazilyLoadedObject.Copyable>
           
 
Constructor Summary
LazilyLoadedObject(LazilyLoadedObject.Loader<E> loader)
           
 
Method Summary
 java.lang.Object clone()
           
 java.lang.Object get()
           
 void load()
           
 void set(E o)
           
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LazilyLoadedObject

public LazilyLoadedObject(LazilyLoadedObject.Loader<E> loader)
Method Detail

get

public java.lang.Object get()

load

public void load()

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Overrides:
clone in class java.lang.Object
Throws:
java.lang.CloneNotSupportedException

set

public void set(E o)