Cache\Adapter\Common\AbstractCachePool::save PHP Method

save() public method

public save ( Psr\Cache\CacheItemInterface $item )
$item Psr\Cache\CacheItemInterface
    public function save(CacheItemInterface $item)
    {
        $timeToLive = null;
        if ($item instanceof HasExpirationDateInterface) {
            if (null !== ($expirationDate = $item->getExpirationDate())) {
                $timeToLive = $expirationDate->getTimestamp() - time();
                if ($timeToLive < 0) {
                    return $this->deleteItem($item->getKey());
                }
            }
        }
        try {
            return $this->storeItemInCache($item, $timeToLive);
        } catch (\Exception $e) {
            $this->handleException($e, __FUNCTION__);
        }
    }

Usage Example

Beispiel #1
0
 /**
  * {@inheritdoc}
  */
 public function save(CacheItemInterface $item)
 {
     if ($item instanceof TaggableItemInterface) {
         $this->saveTags($item);
     }
     return parent::save($item);
 }