Package com.fasterxml.jackson.core.util
Class RecyclerPool.NonRecyclingPoolBase<P extends RecyclerPool.WithPool<P>>
- java.lang.Object
-
- com.fasterxml.jackson.core.util.RecyclerPool.NonRecyclingPoolBase<P>
-
- All Implemented Interfaces:
RecyclerPool<P>,java.io.Serializable
- Direct Known Subclasses:
JsonRecyclerPools.NonRecyclingPool
- Enclosing interface:
- RecyclerPool<P extends RecyclerPool.WithPool<P>>
public abstract static class RecyclerPool.NonRecyclingPoolBase<P extends RecyclerPool.WithPool<P>> extends java.lang.Object implements RecyclerPool<P>
RecyclerPoolimplementation that does not use any pool but simply creates new instances when necessary.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.fasterxml.jackson.core.util.RecyclerPool
RecyclerPool.BoundedPoolBase<P extends RecyclerPool.WithPool<P>>, RecyclerPool.ConcurrentDequePoolBase<P extends RecyclerPool.WithPool<P>>, RecyclerPool.LockFreePoolBase<P extends RecyclerPool.WithPool<P>>, RecyclerPool.NonRecyclingPoolBase<P extends RecyclerPool.WithPool<P>>, RecyclerPool.StatefulImplBase<P extends RecyclerPool.WithPool<P>>, RecyclerPool.ThreadLocalPoolBase<P extends RecyclerPool.WithPool<P>>, RecyclerPool.WithPool<P extends RecyclerPool.WithPool<P>>
-
-
Constructor Summary
Constructors Constructor Description NonRecyclingPoolBase()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description PacquireAndLinkPooled()Method called to acquire a Pooled value from this pool AND make sure it is linked back to thisRecyclerPoolas necessary for it to be released (seeRecyclerPool.releasePooled(P)) later after usage ends.abstract PacquirePooled()Method for sub-classes to implement for actual acquire logic; called byRecyclerPool.acquireAndLinkPooled().voidreleasePooled(P pooled)Method that should be called when previously acquired (seeRecyclerPool.acquireAndLinkPooled()) pooled value that is no longer needed; this lets pool to take ownership for possible reuse.
-
-
-
Method Detail
-
acquireAndLinkPooled
public P acquireAndLinkPooled()
Description copied from interface:RecyclerPoolMethod called to acquire a Pooled value from this pool AND make sure it is linked back to thisRecyclerPoolas necessary for it to be released (seeRecyclerPool.releasePooled(P)) later after usage ends. Actual acquisition is done by a call toRecyclerPool.acquirePooled().Default implementation calls
RecyclerPool.acquirePooled()followed by a call toRecyclerPool.WithPool.withPool(com.fasterxml.jackson.core.util.RecyclerPool<P>).- Specified by:
acquireAndLinkPooledin interfaceRecyclerPool<P extends RecyclerPool.WithPool<P>>- Returns:
- Pooled instance for caller to use; caller expected
to call
RecyclerPool.releasePooled(P)after it is done using instance.
-
acquirePooled
public abstract P acquirePooled()
Description copied from interface:RecyclerPoolMethod for sub-classes to implement for actual acquire logic; called byRecyclerPool.acquireAndLinkPooled().- Specified by:
acquirePooledin interfaceRecyclerPool<P extends RecyclerPool.WithPool<P>>- Returns:
- Instance acquired (pooled or just constructed)
-
releasePooled
public void releasePooled(P pooled)
Description copied from interface:RecyclerPoolMethod that should be called when previously acquired (seeRecyclerPool.acquireAndLinkPooled()) pooled value that is no longer needed; this lets pool to take ownership for possible reuse.- Specified by:
releasePooledin interfaceRecyclerPool<P extends RecyclerPool.WithPool<P>>- Parameters:
pooled- Pooled instance to release back to pool
-
-