ChainAdapter
    
            
            in package
            
        
    
            
            implements
                            AdapterInterface,                             CacheInterface,                             PruneableInterface,                             ResettableInterface                    
    
            
            Uses
                            ContractsTrait                    
    
        
            Chains several adapters together.
Cached items are fetched from the first adapter having them in its data store. They are saved and deleted in all adapters at once.
Tags
Interfaces, Classes, Traits and Enums
- AdapterInterface
 - Interface for adapters managing instances of Symfony's CacheItem.
 - CacheInterface
 - Covers most simple to advanced caching needs.
 - PruneableInterface
 - Interface extends psr-6 and psr-16 caches to allow for pruning (deletion) of all expired cache items.
 - ResettableInterface
 - Resets a pool's local state.
 
Table of Contents
- $adapterCount : mixed
 - $adapters : mixed
 - $syncItem : mixed
 - __construct() : mixed
 - clear() : bool
 - Deletes all items in the pool.
 - commit() : bool
 - {@inheritdoc}
 - deleteItem() : bool
 - {@inheritdoc}
 - deleteItems() : bool
 - {@inheritdoc}
 - get() : mixed
 - Fetches a value from the pool or computes it if not found.
 - getItem() : CacheItem
 - Returns a Cache Item representing the specified key.
 - getItems() : Traversable|array<string|int, CacheItem>
 - Returns a traversable set of cache items.
 - hasItem() : bool
 - {@inheritdoc}
 - prune() : bool
 - reset() : mixed
 - {@inheritdoc}
 - save() : bool
 - {@inheritdoc}
 - saveDeferred() : bool
 - {@inheritdoc}
 - generateItems() : mixed
 
Properties
$adapterCount
    private
        mixed
    $adapterCount
    
        
        
    
$adapters
    private
        mixed
    $adapters
     = []
        
        
    
$syncItem
    private
        mixed
    $syncItem
    
        
        
    
Methods
__construct()
    public
                    __construct(array<string|int, CacheItemPoolInterface> $adapters, int $defaultLifetime) : mixed
    
        Parameters
- $adapters : array<string|int, CacheItemPoolInterface>
 - 
                    
The ordered list of adapters used to fetch cached items
 - $defaultLifetime : int
 - 
                    
The default lifetime of items propagated from lower adapters to upper ones
 
Return values
mixed —clear()
Deletes all items in the pool.
    public
                    clear([string $prefix = '' ]) : bool
    
        Parameters
- $prefix : string = ''
 
Return values
bool —commit()
{@inheritdoc}
    public
                    commit() : bool
    
    
    
        Return values
bool —deleteItem()
{@inheritdoc}
    public
                    deleteItem(mixed $key) : bool
    
        Parameters
- $key : mixed
 
Return values
bool —deleteItems()
{@inheritdoc}
    public
                    deleteItems(array<string|int, mixed> $keys) : bool
    
        Parameters
- $keys : array<string|int, mixed>
 
Return values
bool —get()
Fetches a value from the pool or computes it if not found.
    public
                    get(string $key, callable $callback[, float $beta = null ][, array<string|int, mixed> &$metadata = null ]) : mixed
    
        Parameters
- $key : string
 - 
                    
The key of the item to retrieve from the cache
 - $callback : callable
 - 
                    
Should return the computed value for the given key/item
 - $beta : float = null
 - 
                    
A float that, as it grows, controls the likeliness of triggering early expiration. 0 disables it, INF forces immediate expiration. The default (or providing null) is implementation dependent but should typically be 1.0, which should provide optimal stampede protection. See https://en.wikipedia.org/wiki/Cache_stampede#Probabilistic_early_expiration
 - $metadata : array<string|int, mixed> = null
 - 
                    
The metadata of the cached item ItemInterface::getMetadata()
 
Return values
mixed —The value corresponding to the provided key
getItem()
Returns a Cache Item representing the specified key.
    public
                    getItem(mixed $key) : CacheItem
    
        Parameters
- $key : mixed
 - 
                    
The key for which to return the corresponding Cache Item.
 
Return values
CacheItem —getItems()
Returns a traversable set of cache items.
    public
                    getItems([array<string|int, mixed> $keys = [] ]) : Traversable|array<string|int, CacheItem>
    
        Parameters
- $keys : array<string|int, mixed> = []
 - 
                    
An indexed array of keys of items to retrieve.
 
Return values
Traversable|array<string|int, CacheItem> —hasItem()
{@inheritdoc}
    public
                    hasItem(mixed $key) : bool
    
        Parameters
- $key : mixed
 
Return values
bool —prune()
    public
                    prune() : bool
    
    
    
        Return values
bool —reset()
{@inheritdoc}
    public
                    reset() : mixed
    
    
    
        Return values
mixed —save()
{@inheritdoc}
    public
                    save(CacheItemInterface $item) : bool
    
        Parameters
- $item : CacheItemInterface
 
Return values
bool —saveDeferred()
{@inheritdoc}
    public
                    saveDeferred(CacheItemInterface $item) : bool
    
        Parameters
- $item : CacheItemInterface
 
Return values
bool —generateItems()
    private
                    generateItems(iteratable<string|int, mixed> $items, int $adapterIndex) : mixed
        
        Parameters
- $items : iteratable<string|int, mixed>
 - $adapterIndex : int