Class WeakObjectPool<T,​E extends Throwable>


  • @Deprecated
    public abstract class WeakObjectPool<T,​E extends Throwable>
    extends Object
    Deprecated.
    This class is no longer in use in Santuario 2.1.4
    Abstract base class for pooling objects. The two public methods are getObject() and (repool(Object). Objects are held through weak references so even objects that are not repooled are subject to garbage collection. Subclasses must implement the abstract createObject().

    Internally, the pool is stored in a java.util.concurrent.LinkedBlockingDeque instance.

    • Constructor Detail

      • WeakObjectPool

        protected WeakObjectPool()
        Deprecated.
        The lone constructor.
    • Method Detail

      • createObject

        protected abstract T createObject()
                                   throws E extends Throwable
        Deprecated.
        Called whenever a new pool object is desired; subclasses must implement.
        Returns:
        object of the type desired by the subclass
        Throws:
        E - Throwable's subclass
        E extends Throwable
      • getObject

        public T getObject()
                    throws E extends Throwable
        Deprecated.
        Subclasses can subclass to return a more specific type.
        Returns:
        an object from the pool; will block until an object is available
        Throws:
        E
        E extends Throwable
      • repool

        public boolean repool​(T obj)
        Deprecated.
        Adds the given object to the pool, provided that the object was created by this pool.
        Parameters:
        obj - the object to return to the pool
        Returns:
        whether the object was successfully added as available