Class PooledSoftReference<T>

    • 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()
        Gets 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
      • getReference

        public SoftReference<T> getReference()
        Gets 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