Source for file Cache.php
Documentation is available at Cache.php
* Copyright (C) 2009 Mai (Me Artificial Intelligence)
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* @author Wouter Bulten (wouterbulten@mai-ai.org)
* @copyright Copyright (C) 2009 Mai (Me Artificial Intelligence)
* @license http://opensource.org/licenses/gpl-3.0.html GNU General Public License version 3 (GPLv3)
* @link http://www.launchpad.net/mai
* Mai_Cache is an gateway for cache classes.
* @author Wouter Bulten (wouterbulten@mai-ai.org)
* @copyright Copyright (C) 2009 Mai (Me Artificial Intelligence)
* @license http://opensource.org/licenses/gpl-3.0.html GNU General Public License version 3 (GPLv3)
* @link http://www.launchpad.net/mai
* @var Mai_Cache Singleton instance
protected static $_instance;
* Private constructor to prevent creation of this object.
* Retrieve singleton instance
trigger_error('Mai has not been setup yet. Please use Mai::init().', E_USER_ERROR);
if (null === self::$_instance) {
//Start up and load ini file
self::$_instance = new self();
* Create a new words cache file.
* @return Mai_Cache_Words
public static function newCacheWords($location = null, $filename, $varName)
if(!is_string($filename))
require_once 'Mai/Cache/Words.php';
return new Mai_Cache_Words($location, $filename, $varName, self::getInstance());
* Cloning of a singleton class is not allowed.
* Function to prevent deserializing
|