From f25091e10c4b702b0a5e403b4dfc88b6ab56efad Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Thu, 18 Mar 2010 03:28:23 -0600 Subject: [PATCH] Add Horde_Lock to the list of global bindings --- babel/view.php | 2 +- framework/Core/lib/Horde/Core/Binder/Lock.php | 22 ++++++++++++++++ framework/Core/lib/Horde/Registry.php | 1 + framework/Core/package.xml | 2 ++ framework/Rpc/lib/Horde/Rpc/Webdav.php | 18 +++++++------- framework/Share/Share.php | 36 ++++++++++----------------- kronolith/lib/Event.php | 2 +- wicked/lib/Page/StandardPage.php | 2 +- 8 files changed, 50 insertions(+), 35 deletions(-) create mode 100644 framework/Core/lib/Horde/Core/Binder/Lock.php diff --git a/babel/view.php b/babel/view.php index d248626af..3aad9edff 100644 --- a/babel/view.php +++ b/babel/view.php @@ -65,7 +65,7 @@ if ($app) { $lockscope = sprintf("babel-%s-%s", $app, $lang); // Initialize Horde_Lock class - $locks = &Horde_Lock::singleton('Sql'); + $locks = Horde_Lock::singleton('Sql', Horde::getDriverConfig('lock', 'Sql')); // $curlocks = $locks->getLocks($lockscope); // var_dump($curlocks); diff --git a/framework/Core/lib/Horde/Core/Binder/Lock.php b/framework/Core/lib/Horde/Core/Binder/Lock.php new file mode 100644 index 000000000..f91126074 --- /dev/null +++ b/framework/Core/lib/Horde/Core/Binder/Lock.php @@ -0,0 +1,22 @@ +getInstance('Horde_Log_Logger'); + + return Horde_Lock::singleton($driver, $params); + } + + public function equals(Horde_Injector_Binder $binder) + { + return false; + } +} diff --git a/framework/Core/lib/Horde/Registry.php b/framework/Core/lib/Horde/Registry.php index 06eca4bf8..0e493a25f 100644 --- a/framework/Core/lib/Horde/Registry.php +++ b/framework/Core/lib/Horde/Registry.php @@ -237,6 +237,7 @@ class Horde_Registry 'Horde_Alarm' => new Horde_Core_Binder_Alarm(), 'Horde_Cache' => new Horde_Core_Binder_Cache(), 'Horde_Db_Adapter_Base' => new Horde_Core_Binder_Db('reader'), + 'Horde_Lock' => new Horde_Core_Binder_Lock(), 'Horde_Log_Logger' => new Horde_Core_Binder_Logger(), 'Horde_Memcache' => new Horde_Core_Binder_Memcache(), 'Horde_Notification' => new Horde_Core_Binder_Notification(), diff --git a/framework/Core/package.xml b/framework/Core/package.xml index 3e255213f..8873e8cb6 100644 --- a/framework/Core/package.xml +++ b/framework/Core/package.xml @@ -68,6 +68,7 @@ Application Framework. + @@ -198,6 +199,7 @@ Application Framework. + diff --git a/framework/Rpc/lib/Horde/Rpc/Webdav.php b/framework/Rpc/lib/Horde/Rpc/Webdav.php index 300befebf..14d87cc62 100644 --- a/framework/Rpc/lib/Horde/Rpc/Webdav.php +++ b/framework/Rpc/lib/Horde/Rpc/Webdav.php @@ -697,9 +697,9 @@ class Horde_Rpc_Webdav extends Horde_Rpc } try { - $locks = Horde_Lock::singleton($GLOBALS['conf']['lock']['driver']); + $locks = $GLOBALS['injector']->getInstance('Horde_Lock'); } catch (Horde_Lock_Exception $e) { - Horde::logMessage($e->getMessage(), 'ERR'); + Horde::logMessage($e, 'ERR'); return 500; } @@ -712,7 +712,7 @@ class Horde_Rpc_Webdav extends Horde_Rpc $lockid = $locks->setLock(Horde_Auth::getAuth(), 'webdav', $params['path'], $timeout, $locktype); } catch (Horde_Lock_Exception $e) { - Horde::logMessage($e->getMessage(), 'ERR'); + Horde::logMessage($e, 'ERR'); return 500; } if ($lockid === false) { @@ -744,16 +744,16 @@ class Horde_Rpc_Webdav extends Horde_Rpc } try { - $locks = Horde_Lock::singleton($GLOBALS['conf']['lock']['driver']); + $locks = $GLOBALS['injector']->getInstance('Horde_Lock'); } catch (Horde_Lock_Exception $e) { - Horde::logMessage($e->getMessage(), 'ERR'); + Horde::logMessage($e, 'ERR'); return 500; } try { $res = $locks->clearLock($params['token']); } catch (Horde_Lock_Exception $e) { - Horde::logMessage($e->getMessage(), 'ERR'); + Horde::logMessage($e, 'ERR'); return 500; } if ($res === false) { @@ -776,16 +776,16 @@ class Horde_Rpc_Webdav extends Horde_Rpc } try { - $locks = Horde_Lock::singleton($GLOBALS['conf']['lock']['driver']); + $locks = $GLOBALS['injector']->getInstance('Horde_Lock'); } catch (Horde_Lock_Exception $e) { - Horde::logMessage($e->getMessage(), 'ERR'); + Horde::logMessage($e, 'ERR'); return false; } try { $res = $locks->getLocks('webdav', $resource); } catch (Horde_Lock_Exception $e) { - Horde::logMessage($e->getMessage(), 'ERR'); + Horde::logMessage($e, 'ERR'); return false; } diff --git a/framework/Share/Share.php b/framework/Share/Share.php index bd4d029c7..fe679658b 100644 --- a/framework/Share/Share.php +++ b/framework/Share/Share.php @@ -787,14 +787,11 @@ class Horde_Share_Object { */ function lock($item_uid = null) { - require_once 'Horde/Lock.php'; - try { - $locks = &Horde_Lock::singleton($GLOBALS['conf']['lock']['driver']); + $locks = $GLOBALS['injector']->getInstance('Horde_Lock'); } catch (Horde_Lock_Exception $e) { - $locks = PEAR::raiseError($e->getMessage()); - Horde::logMessage($locks, 'ERR'); - return $locks; + Horde::logMessage($e, 'ERR'); + return PEAR::raiseError($e->getMessage()); } $shareid = $this->getId(); @@ -847,14 +844,11 @@ class Horde_Share_Object { */ function unlock($lockid) { - require_once 'Horde/Lock.php'; - try { - $locks = &Horde_Lock::singleton($GLOBALS['conf']['lock']['driver']); + $locks = $GLOBALS['injector']->getInstance('Horde_Lock'); } catch (Horde_Lock_Exception $e) { - $locks = PEAR::raiseError($e->getMessage()); - Horde::logMessage($locks, 'ERR'); - return $locks; + Horde::logMessage($e, 'ERR'); + return PEAR::raiseError($e->getMessage()); } return $locks->clearLock($lockid); @@ -874,13 +868,11 @@ class Horde_Share_Object { */ function checkLocks($item_uid = null) { - require_once 'Horde/Lock.php'; try { - $locks = &Horde_Lock::singleton($GLOBALS['conf']['lock']['driver']); + $locks = $GLOBALS['injector']->getInstance('Horde_Lock'); } catch (Horde_Lock_Exception $e) { - $locks = PEAR::raiseError($e->getMessage()); - Horde::logMessage($locks, 'ERR'); - return $locks; + Horde::logMessage($e, 'ERR'); + return PEAR::raiseError($e->getMessage()); } $shareid = $this->getId(); @@ -890,9 +882,8 @@ class Horde_Share_Object { try { $result = $locks->getLocks($this->_shareOb->getApp(), $shareid, $locktype); } catch (Horde_Lock_Exception $e) { - $result = PEAR::raiseError($e->getMessage()); - Horde::logMessage($result, 'ERR'); - return $result; + Horde::logMessage($e, 'ERR'); + return PEAR::raiseError($e->getMessage()); } if (empty($result) && !empty($item_uid)) { @@ -901,9 +892,8 @@ class Horde_Share_Object { try { $result = $locks->getLocks($this->_shareOb->getApp() . ':' . $shareid, $item_uid, $locktype); } catch (Horde_Lock_Exception $e) { - $result = PEAR::raiseError($e->getMessage()); - Horde::logMessage($result, 'ERR'); - return $result; + Horde::logMessage($e, 'ERR'); + return PEAR::raiseError($e->getMessage()); } } else { $locktargettype = 'share'; diff --git a/kronolith/lib/Event.php b/kronolith/lib/Event.php index 4fbb5b297..6dc1f05c4 100644 --- a/kronolith/lib/Event.php +++ b/kronolith/lib/Event.php @@ -421,7 +421,7 @@ abstract class Kronolith_Event /* Check for acceptance/denial of this event's resources. */ $add_events = array(); - $locks = Horde_Lock::singleton($GLOBALS['conf']['lock']['driver']); + $locks = $GLOBALS['injector']->getInstance('Horde_Lock'); $lock = array(); $failed_resources = array(); foreach ($this->getResources() as $id => $resourceData) { diff --git a/wicked/lib/Page/StandardPage.php b/wicked/lib/Page/StandardPage.php index ebfbda324..349e2e01d 100644 --- a/wicked/lib/Page/StandardPage.php +++ b/wicked/lib/Page/StandardPage.php @@ -107,7 +107,7 @@ class StandardPage extends Page { if ($GLOBALS['conf']['lock']['driver'] != 'none') { $this->supportedModes[WICKED_MODE_LOCKING] = $this->supportedModes[WICKED_MODE_UNLOCKING] = true; - $this->_locks = Horde_Lock::factory($GLOBALS['conf']['lock']['driver']); + $this->_locks = $GLOBALS['injector']->getInstance('Horde_Lock'); $locks = $this->_locks->getLocks('wicked', $pagename, Horde_Lock::TYPE_EXCLUSIVE); if ($locks) { $this->_lock = reset($locks); -- 2.11.0