Class QueueingRecycler<V>

  • All Implemented Interfaces:
    Recycler<V>

    public class QueueingRecycler<V>
    extends java.lang.Object
    implements Recycler<V>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.function.Consumer<V> cleaner  
      private java.util.Queue<V> queue  
      private java.util.function.Supplier<V> supplier  
    • Constructor Summary

      Constructors 
      Constructor Description
      QueueingRecycler​(java.util.function.Supplier<V> supplier, java.util.function.Consumer<V> cleaner, java.util.Queue<V> queue)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      V acquire()  
      (package private) java.util.Queue<V> getQueue()  
      void release​(V value)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • supplier

        private final java.util.function.Supplier<V> supplier
      • cleaner

        private final java.util.function.Consumer<V> cleaner
      • queue

        private final java.util.Queue<V> queue
    • Constructor Detail

      • QueueingRecycler

        public QueueingRecycler​(java.util.function.Supplier<V> supplier,
                                java.util.function.Consumer<V> cleaner,
                                java.util.Queue<V> queue)
    • Method Detail

      • getQueue

        java.util.Queue<V> getQueue()
      • release

        public void release​(V value)
        Specified by:
        release in interface Recycler<V>