Package com.fasterxml.jackson.core.util

# Class RecyclerPool.StatefulImplBase<P extends RecyclerPool.WithPool<P>>

java.lang.Object
com.fasterxml.jackson.core.util.RecyclerPool.StatefulImplBase<P>

All Implemented Interfaces:
  `RecyclerPool<P>`, `Serializable`

Direct Known Subclasses:
  `RecyclerPool.BoundedPoolBase`, `RecyclerPool.ConcurrentDequePoolBase`, `RecyclerPool.LockFreePoolBase`

Enclosing interface:
  RecyclerPool<P extends RecyclerPool.WithPool<P>>

public abstract static class RecyclerPool.StatefulImplBase<P extends RecyclerPool.WithPool<P>> extends Object implements RecyclerPool<P>
Intermediate base class for instances that are stateful and require special handling with respect to JDK serialization, to retain "global" reference distinct from non-shared ones.

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>>`

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final int`
`_serialization`
Value that indicates basic aspects of pool for JDK serialization; either marker for shared/non-shared, or possibly bounded size; depends on sub-class.
`static final int`
`SERIALIZATION_NON_SHARED`
`static final int`
`SERIALIZATION_SHARED`

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`StatefulImplBase(int serialization)`

## Method Summary

Modifier and Type
Method
Description
`protected Optional<RecyclerPool.StatefulImplBase<P>>`
`_resolveToShared(RecyclerPool.StatefulImplBase<P> shared)`
`abstract P`
`createPooled()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface com.fasterxml.jackson.core.util.RecyclerPool

`acquireAndLinkPooled, acquirePooled, releasePooled`

## Field Details

### SERIALIZATION_SHARED

public static final int SERIALIZATION_SHARED

See Also:
  - Constant Field Values

### SERIALIZATION_NON_SHARED

public static final int SERIALIZATION_NON_SHARED

See Also:
  - Constant Field Values

### _serialization

protected final int _serialization
Value that indicates basic aspects of pool for JDK serialization; either marker for shared/non-shared, or possibly bounded size; depends on sub-class.

## Constructor Details

### StatefulImplBase

protected StatefulImplBase(int serialization)

## Method Details

### _resolveToShared

protected Optional<RecyclerPool.StatefulImplBase<P>> _resolveToShared(RecyclerPool.StatefulImplBase<P> shared)

### createPooled

public abstract P createPooled()