+++ /dev/null
-<?php
-/**
- * @category Horde
- * @package Core
- */
-class Horde_Core_Binder_Token implements Horde_Injector_Binder
-{
- public function create(Horde_Injector $injector)
- {
- $driver = isset($GLOBALS['conf']['token'])
- ? $GLOBALS['conf']['token']['driver']
- : 'Null';
- $params = isset($GLOBALS['conf']['token'])
- ? Horde::getDriverConfig('token', $GLOBALS['conf']['token']['driver'])
- : array();
-
- if (strcasecmp($driver, 'Sql') === 0) {
- $params['db'] = $injector->getInstance('Horde_Db_Adapter');
- } elseif (strcasecmp($driver, 'None') === 0) {
- $driver = 'Null';
- }
-
- $params['logger'] = $injector->getInstance('Horde_Log_Logger');
-
- return Horde_Token::factory($driver, $params);
- }
-
- public function equals(Horde_Injector_Binder $binder)
- {
- return false;
- }
-
-}
--- /dev/null
+<?php
+/**
+ * @category Horde
+ * @package Core
+ */
+class Horde_Core_Factory_Token
+{
+ public function create(Horde_Injector $injector)
+ {
+ $driver = isset($GLOBALS['conf']['token'])
+ ? $GLOBALS['conf']['token']['driver']
+ : 'Null';
+ $params = isset($GLOBALS['conf']['token'])
+ ? Horde::getDriverConfig('token', $GLOBALS['conf']['token']['driver'])
+ : array();
+
+ if (strcasecmp($driver, 'Sql') === 0) {
+ $params['db'] = $injector->getInstance('Horde_Db_Adapter');
+ } elseif (strcasecmp($driver, 'None') === 0) {
+ $driver = 'Null';
+ }
+
+ $params['logger'] = $injector->getInstance('Horde_Log_Logger');
+
+ $class = 'Horde_Token_' . ucfirst($driver);
+ if (class_exists($class)) {
+ return new $class($params);
+ }
+
+ throw new Horde_Token_Exception('Driver ' . $driver . ' not found.');
+ }
+
+}
'Horde_Template' => new Horde_Core_Binder_Template(),
'Horde_Text_Filter' => new Horde_Core_Binder_TextFilter(),
'Horde_Tree' => new Horde_Core_Binder_Tree(),
- 'Horde_Token' => new Horde_Core_Binder_Token(),
'Horde_Vfs' => new Horde_Core_Binder_Vfs(),
);
'Horde_Core_Factory_Twitter',
'create',
),
+ 'Horde_Token' => array(
+ 'Horde_Core_Factory_Token',
+ 'create',
+ ),
'Horde_View' => array(
'Horde_Core_Factory_View',
'create',
<file name="ShareFactory.php" role="php" />
<file name="Template.php" role="php" />
<file name="TextFilter.php" role="php" />
- <file name="Token.php" role="php" />
<file name="Tree.php" role="php" />
<file name="Vfs.php" role="php" />
</dir> <!-- /lib/Horde/Core/Binder -->
<file name="SessionHandler.php" role="php" />
<file name="Share.php" role="php" />
<file name="TextFilter.php" role="php" />
+ <file name="Token.php" role="php" />
<file name="Tree.php" role="php" />
<file name="Twitter.php" role="php" />
<file name="Vfs.php" role="php" />
<install as="Horde/Core/Binder/ShareFactory.php" name="lib/Horde/Core/Binder/ShareFactory.php" />
<install as="Horde/Core/Binder/Template.php" name="lib/Horde/Core/Binder/Template.php" />
<install as="Horde/Core/Binder/TextFilter.php" name="lib/Horde/Core/Binder/TextFilter.php" />
- <install as="Horde/Core/Binder/Token.php" name="lib/Horde/Core/Binder/Token.php" />
<install as="Horde/Core/Binder/Tree.php" name="lib/Horde/Core/Binder/Tree.php" />
<install as="Horde/Core/Binder/Vfs.php" name="lib/Horde/Core/Binder/Vfs.php" />
<install as="Horde/Core/Controller/NotFound.php" name="lib/Horde/Core/Controller/NotFound.php" />
<install as="Horde/Core/Factory/SessionHandler.php" name="lib/Horde/Core/Factory/SessionHandler.php" />
<install as="Horde/Core/Factory/Share.php" name="lib/Horde/Core/Factory/Share.php" />
<install as="Horde/Core/Factory/TextFilter.php" name="lib/Horde/Core/Factory/TextFilter.php" />
+ <install as="Horde/Core/Factory/Token.php" name="lib/Horde/Core/Factory/Token.php" />
<install as="Horde/Core/Factory/Tree.php" name="lib/Horde/Core/Factory/Tree.php" />
<install as="Horde/Core/Factory/Twitter.php" name="lib/Horde/Core/Factory/Twitter.php" />
<install as="Horde/Core/Factory/Vfs.php" name="lib/Horde/Core/Factory/Vfs.php" />