@@ 206-210 (lines=5) @@ | ||
203 | /** |
|
204 | * @var ExtendedCacheItemInterface $item |
|
205 | */ |
|
206 | if (!array_key_exists($item->getKey(), $this->itemInstances)) { |
|
207 | $this->itemInstances[ $item->getKey() ] = $item; |
|
208 | } else if(spl_object_hash($item) !== spl_object_hash($this->itemInstances[ $item->getKey() ])){ |
|
209 | throw new \RuntimeException('Spl object hash mismatches ! You probably tried to save a detached item which has been already retrieved from cache.'); |
|
210 | } |
|
211 | ||
212 | if ($this->driverWrite($item) && $this->driverWriteTags($item)) { |
|
213 | $item->setHit(true); |
|
@@ 230-234 (lines=5) @@ | ||
227 | */ |
|
228 | public function saveDeferred(CacheItemInterface $item) |
|
229 | { |
|
230 | if (!array_key_exists($item->getKey(), $this->itemInstances)) { |
|
231 | $this->itemInstances[ $item->getKey() ] = $item; |
|
232 | }else if(spl_object_hash($item) !== spl_object_hash($this->itemInstances[ $item->getKey() ])){ |
|
233 | throw new \RuntimeException('Spl object hash mismatches ! You probably tried to save a detached item which has been already retrieved from cache.'); |
|
234 | } |
|
235 | ||
236 | return $this->deferredList[ $item->getKey() ] = $item; |
|
237 | } |
@@ 327-331 (lines=5) @@ | ||
324 | */ |
|
325 | public function attachItem(CacheItemInterface $item) |
|
326 | { |
|
327 | if(isset($this->itemInstances[$item->getKey()]) && spl_object_hash($item) !== spl_object_hash($this->itemInstances[ $item->getKey() ])){ |
|
328 | throw new \LogicException('The item already exists and cannot be overwritten because the Spl object hash mismatches ! You probably tried to re-attach a detached item which has been already retrieved from cache.'); |
|
329 | }else{ |
|
330 | $this->itemInstances[$item->getKey()] = $item; |
|
331 | } |
|
332 | } |
|
333 | ||
334 |