Properly supporting cache indices with NULL values
authorAlexander Ebert <ebert@woltlab.com>
Wed, 6 Apr 2016 09:53:53 +0000 (11:53 +0200)
committerAlexander Ebert <ebert@woltlab.com>
Wed, 6 Apr 2016 09:54:10 +0000 (11:54 +0200)
wcfsetup/install/files/lib/system/cache/builder/AbstractCacheBuilder.class.php
wcfsetup/install/files/lib/system/cache/builder/ICacheBuilder.class.php

index a55931e7d8b417dc498e97d952949955decd0cd4..b054b3c48a18d5ce365192ad534161a1397d05a2 100644 (file)
@@ -8,7 +8,7 @@ use wcf\system\SingletonFactory;
  * Default implementation for cache builders.
  * 
  * @author     Alexander Ebert
- * @copyright  2001-2015 WoltLab GmbH
+ * @copyright  2001-2016 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage system.cache.builder
@@ -28,7 +28,7 @@ abstract class AbstractCacheBuilder extends SingletonFactory implements ICacheBu
        protected $maxLifetime = 0;
        
        /**
-        * @see \wcf\system\cache\builder\ICacheBuilder::getData()
+        * @inheritDoc
         */
        public function getData(array $parameters = array(), $arrayIndex = '') {
                $index = CacheHandler::getInstance()->getCacheIndex($parameters);
@@ -45,7 +45,7 @@ abstract class AbstractCacheBuilder extends SingletonFactory implements ICacheBu
                }
                
                if (!empty($arrayIndex)) {
-                       if (!isset($this->cache[$index][$arrayIndex])) {
+                       if (!array_key_exists($arrayIndex, $this->cache[$index])) {
                                throw new SystemException("array index '".$arrayIndex."' does not exist in cache resource");
                        }
                        
@@ -56,14 +56,14 @@ abstract class AbstractCacheBuilder extends SingletonFactory implements ICacheBu
        }
        
        /**
-        * @see \wcf\system\cache\builder\ICacheBuilder::getMaxLifetime()
+        * @inheritDoc
         */
        public function getMaxLifetime() {
                return $this->maxLifetime;
        }
        
        /**
-        * @see \wcf\system\cache\builder\ICacheBuilder::reset()
+        * @inheritDoc
         */
        public function reset(array $parameters = array()) {
                CacheHandler::getInstance()->flush($this, $parameters);
index ae173709e63e8febdd7c0479e2b4f7a958723eac..1d0ac2843f899f0342ab8520492aa07076e631c0 100644 (file)
@@ -5,7 +5,7 @@ namespace wcf\system\cache\builder;
  * A cache builder provides data for the cache handler that ought to be cached.
  * 
  * @author     Alexander Ebert
- * @copyright  2001-2015 WoltLab GmbH
+ * @copyright  2001-2016 WoltLab GmbH
  * @license    GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
  * @package    com.woltlab.wcf
  * @subpackage system.cache.builder
@@ -17,7 +17,7 @@ interface ICacheBuilder {
         * 
         * @param       array           $parameters
         * @param       string          $arrayIndex
-        * @return      array
+        * @return      mixed
         */
        public function getData(array $parameters = array(), $arrayIndex = '');