org.codehaus.groovy.util
Class LazyReference<T>

java.lang.Object
  extended by java.util.concurrent.locks.AbstractQueuedSynchronizer
      extended by org.codehaus.groovy.util.LockableObject
          extended by org.codehaus.groovy.util.LazyReference<T>
All Implemented Interfaces:
Serializable

public abstract class LazyReference<T>
extends LockableObject

Soft reference with lazy initialization under lock

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.concurrent.locks.AbstractQueuedSynchronizer
AbstractQueuedSynchronizer.ConditionObject
 
Constructor Summary
LazyReference(ReferenceBundle bundle)
           
 
Method Summary
 void clear()
           
 T get()
           
abstract  T initValue()
           
 String toString()
           
 
Methods inherited from class org.codehaus.groovy.util.LockableObject
isHeldExclusively, lock, tryAcquire, tryRelease, unlock
 
Methods inherited from class java.util.concurrent.locks.AbstractQueuedSynchronizer
acquire, acquireInterruptibly, acquireShared, acquireSharedInterruptibly, compareAndSetState, getExclusiveQueuedThreads, getFirstQueuedThread, getQueuedThreads, getQueueLength, getSharedQueuedThreads, getState, getWaitingThreads, getWaitQueueLength, hasContended, hasQueuedThreads, hasWaiters, isQueued, owns, release, releaseShared, setState, tryAcquireNanos, tryAcquireShared, tryAcquireSharedNanos, tryReleaseShared
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LazyReference

public LazyReference(ReferenceBundle bundle)
Method Detail

get

public T get()

clear

public void clear()

initValue

public abstract T initValue()

toString

public String toString()
Overrides:
toString in class AbstractQueuedSynchronizer

Copyright © 2003-2009 The Codehaus. All rights reserved.