From 08a466a242ffaf58dd1670a2162839af1450c7e3 Mon Sep 17 00:00:00 2001 From: Chuck Hagenbuch Date: Sat, 11 Sep 2010 23:33:06 -0400 Subject: [PATCH] Add a factory for View objects --- framework/Core/lib/Horde/Core/Factory/View.php | 39 ++++++++++++++++++++++++++ framework/Core/lib/Horde/Registry.php | 11 ++++++-- framework/Core/package.xml | 2 ++ 3 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 framework/Core/lib/Horde/Core/Factory/View.php diff --git a/framework/Core/lib/Horde/Core/Factory/View.php b/framework/Core/lib/Horde/Core/Factory/View.php new file mode 100644 index 000000000..9c85d47d5 --- /dev/null +++ b/framework/Core/lib/Horde/Core/Factory/View.php @@ -0,0 +1,39 @@ + + * @license http://www.fsf.org/copyleft/lgpl.html LGPL + * @link http://pear.horde.org/index.php?package=Core + */ + +/** + * A Horde_Injector:: based factory for creating Horde_View objects. + * + * Copyright 2010 The Horde Project (http://www.horde.org/) + * + * See the enclosed file COPYING for license information (LGPL). If you + * did not receive this file, see http://www.fsf.org/copyleft/lgpl.html. + * + * @category Horde + * @package Core + * @author Chuck Hagenbuch + * @license http://www.fsf.org/copyleft/lgpl.html LGPL + * @link http://pear.horde.org/index.php?package=Core + */ +class Horde_Core_Factory_View +{ + public function create(Horde_Injector $injector) + { + $view = new Horde_View(); + $view->addBuiltinHelpers(); + return $view; + } +} diff --git a/framework/Core/lib/Horde/Registry.php b/framework/Core/lib/Horde/Registry.php index 04ed3dd18..2cb25e5eb 100644 --- a/framework/Core/lib/Horde/Registry.php +++ b/framework/Core/lib/Horde/Registry.php @@ -327,13 +327,20 @@ implements Horde_Interfaces_Registry_Auth 'Horde_Kolab_Storage' => array( 'Horde_Core_Factory_KolabStorage', 'getStorage', - ) + ), + 'Horde_View' => array( + 'Horde_Core_Factory_View', + 'create', + ), + 'Horde_View_Base' => array( + 'Horde_Core_Factory_View', + 'create', + ), ); /* Define implementations. */ $implementations = array( 'Horde_Controller_ResponseWriter' => 'Horde_Controller_ResponseWriter_Web', - 'Horde_View_Base' => 'Horde_View', ); /* Setup injector. */ diff --git a/framework/Core/package.xml b/framework/Core/package.xml index ed7a0d49d..2e6195a7d 100644 --- a/framework/Core/package.xml +++ b/framework/Core/package.xml @@ -177,6 +177,7 @@ Application Framework. + @@ -501,6 +502,7 @@ Application Framework. + -- 2.11.0