getNamespace(); if ($namespace) { $doctrineCache->setNamespace($namespace); } $this->driver = $doctrineCache; } /** * @inheritdoc */ public function doGet($key, $miss) { $value = $this->driver->fetch($key); // Doctrine cache does not differentiate between no result and cached 'false'. Make sure that we do. return $value !== false || $this->driver->contains($key) ? $value : $miss; } /** * @inheritdoc */ public function doSet($key, $value, $ttl) { return $this->driver->save($key, $value, (int) $ttl); } /** * @inheritdoc */ public function doDelete($key) { return $this->driver->delete($key); } /** * @inheritdoc */ public function doClear() { return $this->driver->deleteAll(); } /** * @inheritdoc */ public function doGetMultiple($keys, $miss) { return $this->driver->fetchMultiple($keys); } /** * @inheritdoc */ public function doSetMultiple($values, $ttl) { return $this->driver->saveMultiple($values, (int) $ttl); } /** * @inheritdoc * @throws \Psr\SimpleCache\InvalidArgumentException|InvalidArgumentException */ public function doDeleteMultiple($keys) { return $this->driver->deleteMultiple($keys); } /** * @inheritdoc */ public function doHas($key) { return $this->driver->contains($key); } }