org.apache.commons.pool2.impl
Class PooledSoftReference<T>

java.lang.Object
  extended by org.apache.commons.pool2.impl.DefaultPooledObject<T>
      extended by org.apache.commons.pool2.impl.PooledSoftReference<T>
Type Parameters:
T - the type of the underlying object that the wrapped SoftReference refers to.
All Implemented Interfaces:
Comparable<PooledObject<T>>, PooledObject<T>

public class PooledSoftReference<T>
extends DefaultPooledObject<T>

Extension of DefaultPooledObject to wrap pooled soft references.

This class is intended to be thread-safe.

Since:
2.0
Version:
$Revision: $

Constructor Summary
PooledSoftReference(SoftReference<T> reference)
          Creates a new PooledSoftReference wrapping the provided reference.
 
Method Summary
 T getObject()
          Returns the object that the wrapped SoftReference refers to.
 SoftReference<T> getReference()
          Returns the SoftReference wrapped by this object.
 void setReference(SoftReference<T> reference)
          Sets the wrapped reference.
 String toString()
          Provides a String form of the wrapper for debug purposes.
 
Methods inherited from class org.apache.commons.pool2.impl.DefaultPooledObject
allocate, compareTo, deallocate, endEvictionTest, getActiveTimeMillis, getCreateTime, getIdleTimeMillis, getLastBorrowTime, getLastReturnTime, getLastUsedTime, getState, invalidate, markAbandoned, markReturning, printStackTrace, setLogAbandoned, startEvictionTest, use
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.commons.pool2.PooledObject
equals, hashCode
 

Constructor Detail

PooledSoftReference

public PooledSoftReference(SoftReference<T> reference)
Creates a new PooledSoftReference wrapping the provided reference.

Parameters:
reference - SoftReference to be managed by the pool
Method Detail

getObject

public T getObject()
Returns the object that the wrapped SoftReference refers to.

Note that if the reference has been cleared, this method will return null.

Specified by:
getObject in interface PooledObject<T>
Overrides:
getObject in class DefaultPooledObject<T>
Returns:
Object referred to by the SoftReference

toString

public String toString()
Provides a String form of the wrapper for debug purposes. The format is not fixed and may change at any time.

Specified by:
toString in interface PooledObject<T>
Overrides:
toString in class DefaultPooledObject<T>

getReference

public SoftReference<T> getReference()
Returns the SoftReference wrapped by this object.

Returns:
underlying SoftReference

setReference

public void setReference(SoftReference<T> reference)
Sets the wrapped reference.

This method exists to allow a new, non-registered reference to be held by the pool to track objects that have been checked out of the pool. The actual parameter should be a reference to the same object that getObject() returns before calling this method.

Parameters:
reference - new reference


Copyright © 2001-2013 The Apache Software Foundation. All Rights Reserved.