* @category Horde * @copyright 2010-2017 Horde LLC * @license http://www.horde.org/licenses/gpl GPL * @package IMP */ class IMP_Factory_Contents extends Horde_Core_Factory_Base { /** * Instances. * * @var array */ private $_instances = array(); /** * Return the IMP_Contents:: instance. * * @param IMP_Indices $indices An indices object. * * @return IMP_Contents The singleton contents instance. * @throws IMP_Exception */ public function create($indices) { $key = strval($indices); if (!isset($this->_instances[$key])) { $this->_instances[$key] = new IMP_Contents($indices); } return $this->_instances[$key]; } }