From: Gunnar Wrobel
Date: Tue, 23 Mar 2010 06:48:51 +0000 (+0100) Subject: Use the new namespace handler (Bug #6691). X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=f52658e9ab1b5acf3c2d15f43a3d6f9994885022;p=horde.git Use the new namespace handler (Bug #6691). --- diff --git a/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver.php b/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver.php index 7e9892e52..929993a30 100644 --- a/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver.php +++ b/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver.php @@ -45,15 +45,4 @@ abstract class Horde_Kolab_Storage_Driver throw new Horde_Kolab_Storage_Exception( 'Driver type definition "' . $class . '" missing.'); } - - /** - * Retrieve the namespace information for this connection. - * - * @return Horde_Kolab_Storage_Namespace The initialized namespace handler. - */ - public function getNamespace() - { - return new Horde_Kolab_Storage_Namespace_Fixed(); - } - } \ No newline at end of file diff --git a/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver/Imap.php b/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver/Imap.php index bd05be32b..f7f1a0c8b 100644 --- a/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver/Imap.php +++ b/framework/Kolab_Storage/lib/Horde/Kolab/Storage/Driver/Imap.php @@ -335,4 +335,25 @@ class Horde_Kolab_Storage_Driver_Imap extends Horde_Kolab_Storage_Driver return $this->_imap->setMetadata($mailbox_name, array($entry => $value)); } + + + /** + * Retrieve the namespace information for this connection. + * + * @return Horde_Kolab_Storage_Namespace The initialized namespace handler. + */ + public function getNamespace() + { + if ($this->_imap->queryCapability('NAMESPACE') === true) { + return new Horde_Kolab_Storage_Namespace_Imap( + $this->_imap->getNamespaces(), + isset($this->_params['namespaces']) ? $this->_params['namespaces'] : array() + ); + } else if (isset($this->_params['namespaces'])) { + return new Horde_Kolab_Storage_Namespace_Config( + $this->_params['namespaces'] + ); + } + return new Horde_Kolab_Storage_Namespace_Fixed(); + } } \ No newline at end of file