| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 | <?phpnamespace Psr\Cache;/** * CacheItemPoolInterface generates CacheItemInterface objects. * * The primary purpose of Cache\CacheItemPoolInterface is to accept a key from * the Calling Library and return the associated Cache\CacheItemInterface object. * It is also the primary point of interaction with the entire cache collection. * All configuration and initialization of the Pool is left up to an * Implementing Library. */interface CacheItemPoolInterface{    /**     * Returns a Cache Item representing the specified key.     *     * This method must always return a CacheItemInterface object, even in case of     * a cache miss. It MUST NOT return null.     *     * @param string $key     *   The key for which to return the corresponding Cache Item.     *     * @throws InvalidArgumentException     *   If the $key string is not a legal value a \Psr\Cache\InvalidArgumentException     *   MUST be thrown.     *     * @return CacheItemInterface     *   The corresponding Cache Item.     */    public function getItem($key);    /**     * Returns a traversable set of cache items.     *     * @param string[] $keys     *   An indexed array of keys of items to retrieve.     *     * @throws InvalidArgumentException     *   If any of the keys in $keys are not a legal value a \Psr\Cache\InvalidArgumentException     *   MUST be thrown.     *     * @return array|\Traversable     *   A traversable collection of Cache Items keyed by the cache keys of     *   each item. A Cache item will be returned for each key, even if that     *   key is not found. However, if no keys are specified then an empty     *   traversable MUST be returned instead.     */    public function getItems(array $keys = array());    /**     * Confirms if the cache contains specified cache item.     *     * Note: This method MAY avoid retrieving the cached value for performance reasons.     * This could result in a race condition with CacheItemInterface::get(). To avoid     * such situation use CacheItemInterface::isHit() instead.     *     * @param string $key     *   The key for which to check existence.     *     * @throws InvalidArgumentException     *   If the $key string is not a legal value a \Psr\Cache\InvalidArgumentException     *   MUST be thrown.     *     * @return bool     *   True if item exists in the cache, false otherwise.     */    public function hasItem($key);    /**     * Deletes all items in the pool.     *     * @return bool     *   True if the pool was successfully cleared. False if there was an error.     */    public function clear();    /**     * Removes the item from the pool.     *     * @param string $key     *   The key to delete.     *     * @throws InvalidArgumentException     *   If the $key string is not a legal value a \Psr\Cache\InvalidArgumentException     *   MUST be thrown.     *     * @return bool     *   True if the item was successfully removed. False if there was an error.     */    public function deleteItem($key);    /**     * Removes multiple items from the pool.     *     * @param string[] $keys     *   An array of keys that should be removed from the pool.     * @throws InvalidArgumentException     *   If any of the keys in $keys are not a legal value a \Psr\Cache\InvalidArgumentException     *   MUST be thrown.     *     * @return bool     *   True if the items were successfully removed. False if there was an error.     */    public function deleteItems(array $keys);    /**     * Persists a cache item immediately.     *     * @param CacheItemInterface $item     *   The cache item to save.     *     * @return bool     *   True if the item was successfully persisted. False if there was an error.     */    public function save(CacheItemInterface $item);    /**     * Sets a cache item to be persisted later.     *     * @param CacheItemInterface $item     *   The cache item to save.     *     * @return bool     *   False if the item could not be queued or if a commit was attempted and failed. True otherwise.     */    public function saveDeferred(CacheItemInterface $item);    /**     * Persists any deferred cache items.     *     * @return bool     *   True if all not-yet-saved items were successfully saved or there were none. False otherwise.     */    public function commit();}
 |