Index

A B C D E F G H I L M N O P R S T U V 
All Classes and Interfaces|All Packages|Serialized Form

A

add(Object) - Method in class stormpot.internal.IdentityHashSet
Add the given object to the set.
after(long, long, TimeUnit) - Static method in interface stormpot.Expiration
Construct a new Expiration that will invalidate objects that are older than the given lower bound, before they get older than the upper bound, in the given time unit.
after(long, TimeUnit) - Static method in interface stormpot.Expiration
Construct a new Expiration that will invalidate objects that are older than the exact provided span of time in the given unit.
allocate(Slot) - Method in interface stormpot.Allocator
Create a fresh new instance of T for the given slot.
allocate(Slot) - Method in class stormpot.internal.ReallocatingAdaptor
 
allocatedSize() - Method in class stormpot.internal.DirectAllocationController
 
allocatedSize() - Method in class stormpot.internal.InlineAllocationController
 
allocatedSize() - Method in class stormpot.internal.ThreadedAllocationController
 
AllocationController<T> - Class in stormpot.internal
An AllocationController implements the actual allocation and deallocation of objects in a pool.
AllocationController() - Constructor for class stormpot.internal.AllocationController
Default constructor.
AllocationProcess - Class in stormpot.internal
The allocation process represent the means of building pool-specific AllocationController instances.
AllocationProcess(AllocationProcessMode) - Constructor for class stormpot.internal.AllocationProcess
Create an allocation process with the given operating mode.
AllocationProcessMode - Enum Class in stormpot.internal
The operating mode of an AllocationProcess.
Allocator<T> - Interface in stormpot
An Allocator is responsible for the creation and destruction of Poolable objects.
apply(Timeout, Function<T, R>) - Method in interface stormpot.PoolTap
Claim an object from the pool and apply the given function to it, returning the result and releasing the object back to the pool.
await(Timeout) - Method in interface stormpot.Completion
Causes the current thread to wait until the completion is finished, or the thread is interrupted, or the specified waiting time elapses.
await(Timeout) - Method in class stormpot.internal.StackCompletion
 
await(Timeout) - Method in interface stormpot.internal.StackCompletion.OnAwait
Implements the blocking await of a StackCompletion.

B

BAllocThread<T> - Class in stormpot.internal
The dedicated background allocation process of a pool that operates in the THREADED mode.
BasePoolable - Class in stormpot
A basic implementation of the Poolable interface, which can be extended directly.
BasePoolable(Slot) - Constructor for class stormpot.BasePoolable
Build a BasePoolable for the given slot.
BlazePool<T> - Class in stormpot.internal
BlazePool is a highly optimised Pool implementation that consists of a queues of Poolable instances, the access to which is made faster with clever use of ThreadLocals.
BlazePool(PoolBuilderImpl<T>, AllocationProcess) - Constructor for class stormpot.internal.BlazePool
Construct a new BlazePool instance based on the given PoolBuilder.
BlazePoolSingleThreadedTap<T> - Class in stormpot.internal
The claim method in this pool tap follows the same idea as the thread-local caching and TLR-claiming in the pool itself.
BlazePoolSingleThreadedTap(BlazePool<T>, boolean) - Constructor for class stormpot.internal.BlazePoolSingleThreadedTap
Create a sequential (only usable by one thread at a time) tap for the given pool.
BlazePoolThreadSafeTap<T> - Class in stormpot.internal
The claim method in this pool tap offers similar thread-safety and performance to the default thread-safe pool tap.
BlazePoolThreadSafeTap(BlazePool<T>) - Constructor for class stormpot.internal.BlazePoolThreadSafeTap
Create a thread-safe tap for the given pool.
BlazePoolVirtualThreadSafeTap<T> - Class in stormpot.internal
The claim method in this pool tap offers similar thread-safety and performance to the default thread-safe pool tap, but without the use of ThreadLocal.
BlazePoolVirtualThreadSafeTap(BlazePool<T>, boolean) - Constructor for class stormpot.internal.BlazePoolVirtualThreadSafeTap
Create a virtual-thread-safe tap for the given pool.
block() - Method in class stormpot.internal.StackCompletion
 
BSlot<T> - Class in stormpot.internal
The BSlot implements the Slot and SlotInfo interfaces for the blaze pool implementation.
BSlot(BlockingQueue<BSlot<T>>, AtomicLong) - Constructor for class stormpot.internal.BSlot
Create a new BSlot instance, which will return to the given live queue when released from a claim, and update the given counter when poisoned.
BSlotCache<T> - Class in stormpot.internal
A reference to a BSlot.
BSlotCache() - Constructor for class stormpot.internal.BSlotCache
Create a new, empty instance.
BSlotCachePadded<T> - Class in stormpot.internal
A reference to a BSlot, with extra padding to keep the pointer on its own cache line.
BSlotCachePadded() - Constructor for class stormpot.internal.BSlotCachePadded
Create a new, empty instance.
BSlotPadded<T> - Class in stormpot.internal
A BSlot type with extra padding to ensure each slot is on their own CPU cache line.
BSlotPadded(BlockingQueue<BSlot<T>>, AtomicLong) - Constructor for class stormpot.internal.BSlotPadded
Create a new BSlot instance, which will return to the given live queue when released from a claim, and update the given counter when poisoned.
build() - Method in class stormpot.internal.PoolBuilderImpl
 
build() - Method in interface stormpot.PoolBuilder
Build a Pool instance based on the collected configuration.

C

claim(Timeout) - Method in class stormpot.internal.BlazePool
 
claim(Timeout) - Method in class stormpot.internal.BlazePoolSingleThreadedTap
 
claim(Timeout) - Method in class stormpot.internal.BlazePoolThreadSafeTap
 
claim(Timeout) - Method in class stormpot.internal.BlazePoolVirtualThreadSafeTap
 
claim(Timeout) - Method in interface stormpot.PoolTap
Claim the exclusive rights until released, to an object in the pool.
claim2dead() - Method in class stormpot.internal.BSlot
Transition this slot from claimed to dead.
claimTlr2live() - Method in class stormpot.internal.BSlot
Transition this slot from thread-locally claimed, to live.
clone() - Method in class stormpot.internal.PoolBuilderImpl
 
clone() - Method in interface stormpot.PoolBuilder
Returns a shallow copy of this PoolBuilder object.
close() - Method in class stormpot.Pooled
Pooled implements AutoCloseable as a convenient way to release claimed objects back to the pool, using the try-with-resources syntax.
complete() - Method in class stormpot.internal.StackCompletion
Complete this completion and notify all waiters and subscribers.
Completion - Interface in stormpot
A Completion represents some task that is going to be completed at some point in the future, or maybe already has completed.
countLeakedObjects() - Method in class stormpot.internal.PreciseLeakDetector
Compute a count of the leaked objects that this detector has detected.
countLeakedObjects() - Method in class stormpot.internal.ThreadedAllocationController
 

D

dead2live() - Method in class stormpot.internal.BSlot
Transition this slot from dead to live.
deallocate(T) - Method in interface stormpot.Allocator
Deallocate, if applicable, the given Poolable and free any resources associated with it.
deallocate(T) - Method in class stormpot.internal.ReallocatingAdaptor
 
DEFAULTS - Static variable in class stormpot.internal.PoolBuilderImpl
Mapping of AllocationProcessMode to the pool builder default settings.
direct() - Static method in class stormpot.internal.AllocationProcess
Create an allocation process where all the pooled objects are given up-front.
DIRECT - Enum constant in enum class stormpot.internal.AllocationProcessMode
The operating mode of AllocationProcess.direct().
DirectAllocationController<T> - Class in stormpot.internal
The AllocationController that implements the DIRECT mode.

E

elapsed(long) - Static method in class stormpot.internal.NanoClock
Compute the number of nanoseconds passed since the given start time.
equals(Object) - Method in record class stormpot.internal.PoolBuilderPermissions
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class stormpot.Timeout
Timeouts of equivalent duration are equal, even if they were constructed with different units.
every(long, long, TimeUnit) - Method in interface stormpot.Expiration
Construct a new Expiration that is composed of a time-based expiration and this one, such that this expiration is only consulted at most once within a time period based on the given fromTime and toTime brackets.
every(long, TimeUnit) - Method in interface stormpot.Expiration
Construct a new Expiration that is composed of a time-based expiration and this one, such that this expiration is only consulted at most once within the given time period.
EveryExpiration<T> - Class in stormpot.internal
The implementation of the Expiration.every(long, TimeUnit) and Expiration.every(long, long, TimeUnit) expiration combinators.
EveryExpiration(Expiration<T>, long, long, TimeUnit) - Constructor for class stormpot.internal.EveryExpiration
Create an instance of the combinator with the given configuration.
Expiration<T> - Interface in stormpot
The expiration is used to determine if a given slot has expired, or otherwise become invalid.
expire() - Method in class stormpot.BasePoolable
Explicitly expire this object, such that it will not be claimed again once it is released.
expire(Poolable) - Method in class stormpot.internal.BSlot
 
expire(Poolable) - Method in interface stormpot.Slot
Mark the object represented by this slot as expired.

F

from(CompletionStage<?>) - Static method in interface stormpot.Completion
Translate the given CompletionStage into a Stormpot Completion.
from(Consumer<Runnable>) - Static method in interface stormpot.Completion
Create a completion using the given callback handler.
from(Allocator<T>) - Static method in interface stormpot.Pool
Get a PoolBuilder based on the given Allocator or Reallocator, which can then in turn be used to build a Pool instance with the desired configuration.
fromInline(Allocator<T>) - Static method in interface stormpot.Pool
Get a PoolBuilder based on the given Allocator or Reallocator, which can then in turn be used to build a Pool operating in the inline mode, with the desired configuration.
fromThreaded(Allocator<T>) - Static method in interface stormpot.Pool
Get a PoolBuilder based on the given Allocator or Reallocator, which can then in turn be used to build a threaded Pool instance with the desired configuration.

G

getAdaptedReallocator() - Method in class stormpot.internal.PoolBuilderImpl
Get a Reallocator from this pool builder, possibly by adapting the configured Allocator.
getAgeMillis() - Method in class stormpot.internal.BSlot
 
getAgeMillis() - Method in interface stormpot.SlotInfo
Get the approximate number of milliseconds that have transpired since the object was allocated.
getAllocationCount() - Method in class stormpot.internal.BlazePool
 
getAllocationCount() - Method in class stormpot.internal.ThreadedAllocationController
 
getAllocationCount() - Method in interface stormpot.ManagedPool
Return the number of objects the pool has allocated since it was created.
getAllocationFailureLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
 
getAllocationFailureLatencyPercentile(double) - Method in interface stormpot.ManagedPool
Get the approximate latency value, in milliseconds, for failed allocation latencies within the given percentile/quantile of what has been recorded so far.
getAllocationFailureLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
Get the approximate latency value, in milliseconds, for failed allocation latencies within the given percentile/quantile of what has been recorded so far.
getAllocationLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
 
getAllocationLatencyPercentile(double) - Method in interface stormpot.ManagedPool
Get the approximate Poolable object allocation latency value, in milliseconds, of the given percentile/quantile of the values recorded so far.
getAllocationLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
Get the approximate Poolable object allocation latency value, in milliseconds, of the given percentile/quantile of the values recorded so far.
getAllocator() - Method in class stormpot.internal.PoolBuilderImpl
 
getAllocator() - Method in interface stormpot.PoolBuilder
Get the configured Allocator instance.
getBackgroundExpirationCheckDelay() - Method in class stormpot.internal.PoolBuilderImpl
 
getBackgroundExpirationCheckDelay() - Method in interface stormpot.PoolBuilder
Return the default approximate delay, in milliseconds, between background maintenance tasks, such as the background expiration checks and retrying failed allocations.
getBaseUnit() - Method in class stormpot.Timeout
Get the unit of precision for the underlying clock.
getCreatedNanoTime() - Method in class stormpot.internal.BSlot
 
getCreatedNanoTime() - Method in interface stormpot.SlotInfo
Get the approximate System.nanoTime() timestamp for when the object was allocated.
getCurrentAllocatedCount() - Method in class stormpot.internal.BlazePool
 
getCurrentAllocatedCount() - Method in interface stormpot.ManagedPool
Get the approximate number of currently allocated objects.
getCurrentInUseCount() - Method in class stormpot.internal.BlazePool
 
getCurrentInUseCount() - Method in interface stormpot.ManagedPool
Get the approximate number of objects currently in use.
getDeallocationLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
 
getDeallocationLatencyPercentile(double) - Method in interface stormpot.ManagedPool
Get the approximate latency value, in milliseconds, for deallocation latencies within the given percentile/quantile of what has been recorded so far.
getDeallocationLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
Get the approximate latency value, in milliseconds, for deallocation latencies within the given percentile/quantile of what has been recorded so far.
getExpiration() - Method in class stormpot.internal.PoolBuilderImpl
 
getExpiration() - Method in interface stormpot.PoolBuilder
Get the configured Expiration instance.
getFailedAllocationCount() - Method in class stormpot.internal.BlazePool
 
getFailedAllocationCount() - Method in class stormpot.internal.ThreadedAllocationController
 
getFailedAllocationCount() - Method in interface stormpot.ManagedPool
Return the number of allocations that has failed, either because the allocator threw an exception or because it returned null, since the pool was created.
getLeakedObjectsCount() - Method in class stormpot.internal.BlazePool
 
getLeakedObjectsCount() - Method in interface stormpot.ManagedPool
If the pool is capable of precise object leak detection, this method will return the number of object leaks that have been detected, and prevented, since the pool was created.
getManagedPool() - Method in class stormpot.internal.BlazePool
 
getManagedPool() - Method in interface stormpot.Pool
Get the ManagedPool instance that represents this pool.
getMetricsRecorder() - Method in class stormpot.internal.PoolBuilderImpl
 
getMetricsRecorder() - Method in interface stormpot.PoolBuilder
Get the configured MetricsRecorder instance, or null if none has been configured.
getMode() - Method in class stormpot.internal.AllocationProcess
Get the operating mode of this allocation process.
getObject() - Method in class stormpot.Pooled
Get the pooled object.
getObjectLifetimePercentile(double) - Method in class stormpot.internal.BlazePool
 
getObjectLifetimePercentile(double) - Method in interface stormpot.ManagedPool
Get the approximate object lifetime, in milliseconds, for the given percentile/quantile.
getObjectLifetimePercentile(double) - Method in interface stormpot.MetricsRecorder
Get the approximate object lifetime, in milliseconds, for the given percentile/quantile.
getPoolable() - Method in class stormpot.internal.BSlot
 
getPoolable() - Method in interface stormpot.SlotInfo
Get the Poolable object represented by this SlotInfo instance.
getReallocationFailureLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
 
getReallocationFailureLatencyPercentile(double) - Method in interface stormpot.ManagedPool
Get the approximate latency value, in milliseconds, for failed reallocation latencies within the given percentile/quantile of what has been recorded so far.
getReallocationFailurePercentile(double) - Method in interface stormpot.MetricsRecorder
Get the approximate latency value, in milliseconds, for failed reallocation latencies within the given percentile/quantile of what has been recorded so far.
getReallocationLatencyPercentile(double) - Method in class stormpot.internal.BlazePool
 
getReallocationLatencyPercentile(double) - Method in interface stormpot.ManagedPool
Get the approximate latency value, in milliseconds, for reallocation latencies within the given percentile/quantile of what has been recorded so far.
getReallocationLatencyPercentile(double) - Method in interface stormpot.MetricsRecorder
Get the approximate latency value, in milliseconds, for reallocation latencies within the given percentile/quantile of what has been recorded so far.
getReallocator() - Method in class stormpot.internal.PoolBuilderImpl
 
getReallocator() - Method in interface stormpot.PoolBuilder
Get the configured Allocator instance as a Reallocator.
getSingleThreadedTap() - Method in class stormpot.internal.BlazePool
 
getSingleThreadedTap() - Method in interface stormpot.Pool
Get a PoolTap that only support access by one thread at a time.
getSize() - Method in class stormpot.internal.PoolBuilderImpl
 
getSize() - Method in interface stormpot.PoolBuilder
Get the currently configured size.
getStamp() - Method in class stormpot.internal.BSlot
 
getStamp() - Method in interface stormpot.SlotInfo
Get the stamp value that has been set on this SlotInfo, or 0 if none has been set since the Poolable was allocated.
getTargetSize() - Method in class stormpot.internal.BlazePool
 
getTargetSize() - Method in class stormpot.internal.ThreadedAllocationController
 
getTargetSize() - Method in interface stormpot.ManagedPool
Get the current target size of the pool.
getTargetSize() - Method in interface stormpot.Pool
Get the currently configured target size of the pool.
getThreadFactory() - Method in class stormpot.internal.PoolBuilderImpl
 
getThreadFactory() - Method in interface stormpot.PoolBuilder
Get the ThreadFactory that has been configured, and will be used to create the background allocation threads for the pools.
getThreadSafeTap() - Method in class stormpot.internal.BlazePool
 
getThreadSafeTap() - Method in interface stormpot.Pool
Get a thread-safe PoolTap implementation for this pool, which can be freely shared among multiple threads.
getTimeout() - Method in class stormpot.Timeout
Get the timeout value in terms of the unit.
getTimeoutInBaseUnit() - Method in class stormpot.Timeout
Get the timeout value in terms of the base unit.
getUnit() - Method in class stormpot.Timeout
Get the unit for the timeout value.
getVirtualThreadSafeTap() - Method in class stormpot.internal.BlazePool
 
getVirtualThreadSafeTap() - Method in interface stormpot.Pool
Get a thread-safe PoolTap implementation for this pool, which can be freely shared among multiple threads, including virtual threads.

H

hasExpired(SlotInfo<? extends T>) - Method in interface stormpot.Expiration
Test whether the Slot and Poolable object, represented by the given SlotInfo object, is still valid, or if the pool should deallocate it and allocate a replacement.
hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.EveryExpiration
 
hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.OrExpiration
Returns true if any of the given Expiration has expired.
hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.TimeExpiration
Returns true if the Poolable represented by the given SlotInfo is older than the maximum age permitted by this TimeExpiration.
hasExpired(SlotInfo<? extends T>) - Method in class stormpot.internal.TimeSpreadExpiration
Returns true, with uniformly increasing probability, if the Poolable represented by the given SlotInfo is older than the lower bound, eventually returning true with 100% certainty when the age of the Poolable is equal to or greater than the upper bound.
hashCode() - Method in record class stormpot.internal.PoolBuilderPermissions
Returns a hash code value for this object.
hashCode() - Method in class stormpot.Timeout
 

I

IdentityHashSet - Class in stormpot.internal
Like IdentityHashMap, but as a Set with no overhead for storing values.
IdentityHashSet() - Constructor for class stormpot.internal.IdentityHashSet
Create an empty identity hash set that uses System.identityHashCode(Object) as the hash code for entries.
IdentityHashSet(ToIntFunction<Object>) - Constructor for class stormpot.internal.IdentityHashSet
Create an empty identity hash set that uses the given function as the hash code for entries.
inline() - Static method in class stormpot.internal.AllocationProcess
Create an allocation process where all allocation and deallocation is performed in-line with the claim calls.
INLINE - Enum constant in enum class stormpot.internal.AllocationProcessMode
The operating mode of AllocationProcess.inline().
InlineAllocationController<T> - Class in stormpot.internal
The AllocationController implementation for the INLINE mode.
inUse() - Method in class stormpot.internal.ThreadedAllocationController
 
isBackgroundExpirationEnabled() - Method in class stormpot.internal.PoolBuilderImpl
 
isBackgroundExpirationEnabled() - Method in interface stormpot.PoolBuilder
Return whether background expiration is enabled.
isCompleted() - Method in interface stormpot.Completion
Immediately return whether the completion has completed or not.
isCompleted() - Method in class stormpot.internal.StackCompletion
 
isOptimizeForReducedMemoryUsage() - Method in class stormpot.internal.PoolBuilderImpl
 
isOptimizeForReducedMemoryUsage() - Method in interface stormpot.PoolBuilder
Return whether Stormpot will prioritize minimizing its memory overhead over maximizing performance.
isPreciseLeakDetectionEnabled() - Method in class stormpot.internal.PoolBuilderImpl
 
isPreciseLeakDetectionEnabled() - Method in interface stormpot.PoolBuilder
Return whether precise object leak detection is enabled, which is the case by default.
isReleasable() - Method in class stormpot.internal.StackCompletion
 
isShutDown() - Method in class stormpot.internal.BlazePool
 
isShutDown() - Method in interface stormpot.ManagedPool
Returns true if the shutdown process has been started on this pool, false otherwise.
iterator() - Method in class stormpot.internal.IdentityHashSet
 

L

leakCheck - Variable in class stormpot.internal.BSlot
A reference to the allocated object, used by the PreciseLeakDetector.
live2claim() - Method in class stormpot.internal.BSlot
Attempt to transition this slot from live to claimed.
live2claimTlr() - Method in class stormpot.internal.BSlot
Attempt to transition this slot from live to thread-locally claimed.

M

ManagedPool - Interface in stormpot
This is the JMX management interface for Stormpot object pools.
Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
Section
Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
Section
Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
Section
Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
Section
Memory effects: - Search tag in stormpot.PoolTap.claim(Timeout)
Section
MetricsRecorder - Interface in stormpot
A MetricsRecorder implementation supplies the pool with the ability to record and report operational metrics.

N

NanoClock - Class in stormpot.internal
Convenience functions for operating on relative nanosecond time spans.
nanoTime() - Static method in class stormpot.internal.NanoClock
Equivalent of System.nanoTime().
never() - Static method in interface stormpot.Expiration
Construct a new Expiration that never invalidates any objects.

O

obj - Variable in class stormpot.internal.BSlot
The object being pooled.
object - Variable in class stormpot.Pooled
Deprecated.
Use Pooled.getObject() instead.
of(T...) - Static method in interface stormpot.Pool
Build a Pool instance that pools the given set of objects.
offerDeadSlot(BSlot<T>) - Method in class stormpot.internal.ThreadedAllocationController
 
or(Expiration<T>) - Method in interface stormpot.Expiration
Construct a new Expiration that will invalidate objects if either this, or the given expiration, considers an object expired.
OrExpiration<T> - Class in stormpot.internal
Provides a way to compose Expirations.
OrExpiration(Expiration<T>, Expiration<T>) - Constructor for class stormpot.internal.OrExpiration
Create a new instance with the given two expirations.

P

PERMISSIONS - Static variable in class stormpot.internal.PoolBuilderImpl
Mapping of AllocationProcessMode to the pool builder permissions, deciding what settings can be changed.
poison - Variable in class stormpot.internal.BSlot
Any exception encountered when trying to allocate an object for this slot.
PoisonException - Exception Class in stormpot.internal
Exception type used to mark poison conditions on slots or in the pool.
PoisonException(String) - Constructor for exception class stormpot.internal.PoisonException
Create a new exception with the given message.
Pool<T> - Interface in stormpot
A Pool is a self-renewable set of objects from which one can claim exclusive access to elements, until they are released back into the pool.
Poolable - Interface in stormpot
Objects contained in a Pool must implement the Poolable interface and adhere to its contract.
PoolBuilder<T> - Interface in stormpot
The PoolBuilder collects information about how big a pool should be, and how it should allocate objects, and so on, and finally acts as the factory for building the pool instances themselves, with the PoolBuilder.build() method.
PoolBuilderDefaults - Class in stormpot.internal
Container of default, initial settings for a PoolBuilder.
PoolBuilderImpl<T> - Class in stormpot.internal
The PoolBuilder implementation.
PoolBuilderImpl(AllocationProcess, Allocator<T>) - Constructor for class stormpot.internal.PoolBuilderImpl
Build a new empty PoolBuilder object.
PoolBuilderPermissions - Record Class in stormpot.internal
A holder of permissions, deciding what PoolBuilder settings are allowed to be changed.
PoolBuilderPermissions(boolean, boolean, boolean, boolean, boolean) - Constructor for record class stormpot.internal.PoolBuilderPermissions
Creates an instance of a PoolBuilderPermissions record class.
Pooled<T> - Class in stormpot
A reference to a pooled object.
Pooled(Slot, T) - Constructor for class stormpot.Pooled
Create a pooled object for the given slot and object to be pooled.
PoolException - Exception Class in stormpot
The PoolException may be thrown by a pool implementation in a number of circumstances: If claim is called and the pool needs to allocate a new object, but the allocation fails by returning null or throwing an exception. Likewise if the Reallocator.reallocate(Slot, Poolable) method return null or throw an exception. If the Slot.release(Poolable) method is misused, and the pool is able to detect this. If the expiration check throws an exception.
PoolException(String) - Constructor for exception class stormpot.PoolException
Construct a new PoolException with the given message.
PoolException(String, Throwable) - Constructor for exception class stormpot.PoolException
Construct a new PoolException with the given message and cause.
PoolTap<T> - Interface in stormpot
A PoolTap provides the API for accessing objects in a Pool.
pop() - Method in class stormpot.internal.RefillPile
Remove a slot from the pile, if there is any.
PreciseLeakDetector - Class in stormpot.internal
Leak detector, used to detect if objects allocated by the pool get garbage collected, without first being deallocated by the pool.
PreciseLeakDetector() - Constructor for class stormpot.internal.PreciseLeakDetector
Create a new instance.
propagateTo(StackCompletion) - Method in class stormpot.internal.StackCompletion
Complete the given completion when this completion completes.
push(BSlot<T>) - Method in class stormpot.internal.RefillPile
Push the given slot onto the stack.

R

reallocate(Slot, T) - Method in class stormpot.internal.ReallocatingAdaptor
 
reallocate(Slot, T) - Method in interface stormpot.Reallocator
Possibly reallocate the given instance of T for the given slot, and return it if the reallocation was successful, or a fresh replacement if the instance could not be reallocated.
ReallocatingAdaptor<T> - Class in stormpot.internal
An adaptor that implements Reallocator in terms of a given Allocator.
ReallocatingAdaptor(Allocator<T>) - Constructor for class stormpot.internal.ReallocatingAdaptor
Adapt the given Allocator into a Reallocator.
Reallocator<T> - Interface in stormpot
Reallocators are a special kind of Allocator that can reallocate Poolables that have expired.
recordAllocationFailureLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
Record a latency sample of a failed allocation, in milliseconds.
recordAllocationLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
Record a latency sample of a successful allocation, in milliseconds.
recordDeallocationLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
Record a latency sample of a deallocation, in milliseconds.
recordObjectLifetimeSampleMillis(long) - Method in interface stormpot.MetricsRecorder
Record an object lifetime sample, in milliseconds.
recordReallocationFailureLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
Record a latency sample of a failed reallocation, in milliseconds.
recordReallocationLatencySampleMillis(long) - Method in interface stormpot.MetricsRecorder
Record a latency sample of a successful reallocation, in milliseconds.
refill() - Method in class stormpot.internal.RefillPile
Refill the target queue with all the slots that have been pushed onto this stack.
RefillPile<T> - Class in stormpot.internal
A RefillPile can collect objects, in a concurrent and wait-free manner, before releasing them all to a queue.
RefillPile(BlockingQueue<BSlot<T>>) - Constructor for class stormpot.internal.RefillPile
Create a refill pile that will refill into the given queue.
RefillSlot<T> - Class in stormpot.internal
The node type of RefillPile.
register(BSlot<?>) - Method in class stormpot.internal.PreciseLeakDetector
Register the given slot and its contained object with the detector.
release() - Method in class stormpot.BasePoolable
 
release() - Method in interface stormpot.Poolable
Release this Poolable object back into the pool from where it came, so that others can claim it, or the pool deallocate it if it has expired.
release(Poolable) - Method in class stormpot.internal.BSlot
 
release(Poolable) - Method in interface stormpot.Slot
Signal to the pool that the currently claimed object in this slot has been released.
remove(Object) - Method in class stormpot.internal.IdentityHashSet
Remove the given object from the set.
run() - Method in class stormpot.internal.BAllocThread
 

S

setAllocator() - Method in record class stormpot.internal.PoolBuilderPermissions
Returns the value of the setAllocator record component.
setAllocator(Allocator<X>) - Method in class stormpot.internal.PoolBuilderImpl
 
setAllocator(Allocator<X>) - Method in interface stormpot.PoolBuilder
Set the Allocator or Reallocator to use for the pools we want to configure.
setBackgroundExpiration() - Method in record class stormpot.internal.PoolBuilderPermissions
Returns the value of the setBackgroundExpiration record component.
setBackgroundExpirationCheckDelay(int) - Method in class stormpot.internal.PoolBuilderImpl
 
setBackgroundExpirationCheckDelay(int) - Method in interface stormpot.PoolBuilder
Set the approximate delay, in milliseconds, between background maintenance tasks.
setBackgroundExpirationEnabled(boolean) - Method in class stormpot.internal.PoolBuilderImpl
 
setBackgroundExpirationEnabled(boolean) - Method in interface stormpot.PoolBuilder
Enable or disable background object expiration checking.
setExpiration() - Method in record class stormpot.internal.PoolBuilderPermissions
Returns the value of the setExpiration record component.
setExpiration(Expiration<? super T>) - Method in class stormpot.internal.PoolBuilderImpl
 
setExpiration(Expiration<? super T>) - Method in interface stormpot.PoolBuilder
Set the Expiration to use for the pools we want to configure.
setMetricsRecorder(MetricsRecorder) - Method in class stormpot.internal.PoolBuilderImpl
 
setMetricsRecorder(MetricsRecorder) - Method in interface stormpot.PoolBuilder
Set the MetricsRecorder to use for the pools we want to configure.
setOptimizeForReducedMemoryUsage(boolean) - Method in class stormpot.internal.PoolBuilderImpl
 
setOptimizeForReducedMemoryUsage(boolean) - Method in interface stormpot.PoolBuilder
Tell the pool to optimize for either low memory usage (when giving true), or maximal performance (when giving false).
setPreciseLeakDetectionEnabled(boolean) - Method in class stormpot.internal.PoolBuilderImpl
 
setPreciseLeakDetectionEnabled(boolean) - Method in interface stormpot.PoolBuilder
Enable or disable precise object leak detection.
setSize() - Method in record class stormpot.internal.PoolBuilderPermissions
Returns the value of the setSize record component.
setSize(long) - Method in class stormpot.internal.PoolBuilderImpl
 
setSize(long) - Method in interface stormpot.PoolBuilder
Set the size of the pool we are building.
setStamp(long) - Method in class stormpot.internal.BSlot
 
setStamp(long) - Method in interface stormpot.SlotInfo
Set the stamp value on this SlotInfo.
setTargetSize(long) - Method in class stormpot.internal.BlazePool
 
setTargetSize(long) - Method in class stormpot.internal.ThreadedAllocationController
 
setTargetSize(long) - Method in interface stormpot.ManagedPool
Set a new target size of the pool.
setTargetSize(long) - Method in interface stormpot.Pool
Set the target size for this pool.
setThreadFactory() - Method in record class stormpot.internal.PoolBuilderPermissions
Returns the value of the setThreadFactory record component.
setThreadFactory(ThreadFactory) - Method in class stormpot.internal.PoolBuilderImpl
 
setThreadFactory(ThreadFactory) - Method in interface stormpot.PoolBuilder
Set the ThreadFactory that the pools will use to create its background threads with.
shutdown() - Method in class stormpot.internal.BlazePool
 
shutdown() - Method in class stormpot.internal.ThreadedAllocationController
 
shutdown() - Method in interface stormpot.Pool
Initiate the shutdown process on this pool, and return a Completion instance representing the shutdown procedure.
slot - Variable in class stormpot.BasePoolable
The Slot representing this objects place in the pool.
Slot - Interface in stormpot
A Slot represents a location in a Pool where objects can be allocated into, so that they can be claimed and released.
SlotInfo<T> - Interface in stormpot
An informative interface, used by Expiration instances to determine if a slot has expired or is still invalid for claiming.
StackCompletion - Class in stormpot.internal
An implementation of Completion based on a wait-free stack.
StackCompletion() - Constructor for class stormpot.internal.StackCompletion
Create an unfinished completion with no StackCompletion.OnAwait callback.
StackCompletion(boolean) - Constructor for class stormpot.internal.StackCompletion
Create a possibly finished completion with no StackCompletion.OnAwait callback.
StackCompletion(StackCompletion.OnAwait) - Constructor for class stormpot.internal.StackCompletion
Create an unfinished completion with the given StackCompletion.OnAwait callback.
StackCompletion.OnAwait - Interface in stormpot.internal
A callback that will be notified when threads block on a given completion.
stormpot - module stormpot
Stormpot
stormpot - package stormpot
Stormpot
Stormpot - Search tag in module stormpot
Section
Stormpot - Search tag in package stormpot
Section
stormpot.internal - package stormpot.internal
 
subscribe(Flow.Subscriber<? super Void>) - Method in class stormpot.internal.StackCompletion
 
supply(Timeout, Consumer<T>) - Method in interface stormpot.PoolTap
Claim an object from the pool and supply it to the given consumer, and then release it back to the pool.
switchAllocator(Allocator<T>) - Method in class stormpot.internal.BlazePool
 
switchAllocator(Allocator<T>) - Method in interface stormpot.Pool
Initiate a switch from the current allocator to the given allocator.

T

threaded() - Static method in class stormpot.internal.AllocationProcess
Create an allocation process that create pool controllers that use dedicated background threads.
THREADED - Enum constant in enum class stormpot.internal.AllocationProcessMode
The operating mode of AllocationProcess.threaded().
ThreadedAllocationController<T> - Class in stormpot.internal
The AllocationController implementation for the THREADED mode.
TimeExpiration<T> - Class in stormpot.internal
This is a time based Expiration.
TimeExpiration(long, TimeUnit) - Constructor for class stormpot.internal.TimeExpiration
Construct a new Expiration that will invalidate objects that are older than the provided span of time in the given unit.
Timeout - Class in stormpot
A Timeout represents the maximum amount of time a caller is willing to wait for a blocking operation to complete.
Timeout(long, TimeUnit) - Constructor for class stormpot.Timeout
Construct a new timeout with the given value and unit.
Timeout(Duration) - Constructor for class stormpot.Timeout
Construct a new timeout with the given duration.
TimeSpreadExpiration<T> - Class in stormpot.internal
This is the standard time based Expiration.
TimeSpreadExpiration(long, long, TimeUnit) - Constructor for class stormpot.internal.TimeSpreadExpiration
Construct a new Expiration that will invalidate objects that are older than the given lower bound, before they get older than the upper bound, in the given time unit.
toString() - Method in class stormpot.internal.BSlot
 
toString() - Method in record class stormpot.internal.PoolBuilderPermissions
Returns a string representation of this record class.
toString() - Method in class stormpot.internal.RefillPile
 
toString() - Method in class stormpot.internal.RefillSlot
 
toString() - Method in class stormpot.internal.TimeExpiration
 
toString() - Method in class stormpot.internal.TimeSpreadExpiration
Produces a String representation of this TimeSpreadExpiration.
toString() - Method in class stormpot.Pooled
 
tryClaim() - Method in class stormpot.internal.BlazePool
 
tryClaim() - Method in class stormpot.internal.BlazePoolSingleThreadedTap
 
tryClaim() - Method in class stormpot.internal.BlazePoolThreadSafeTap
 
tryClaim() - Method in class stormpot.internal.BlazePoolVirtualThreadSafeTap
 
tryClaim() - Method in interface stormpot.PoolTap
Returns an object from the pool if the pool contains at least one valid object, otherwise returns null.

U

unregister(BSlot<?>) - Method in class stormpot.internal.PreciseLeakDetector
Deregister the given slot from the leak detector.
unwrap() - Method in class stormpot.internal.ReallocatingAdaptor
Unwrap this adaptor to reveal the underlying Allocator.

V

valueOf(String) - Static method in enum class stormpot.internal.AllocationProcessMode
Returns the enum constant of this class with the specified name.
values() - Static method in enum class stormpot.internal.AllocationProcessMode
Returns an array containing the constants of this enum class, in the order they are declared.
A B C D E F G H I L M N O P R S T U V 
All Classes and Interfaces|All Packages|Serialized Form