class Horde_Auth_Kolab extends Horde_Auth_Base
{
/**
- * The session handler.
- *
- * @var Horde_Kolab_Session
- */
- private $_session;
-
- /**
- * The session factory.
- *
- * @var Horde_Kolab_Session_Factory_Interface
- */
- private $_factory;
-
- /**
* An array of capabilities, so that the driver can report which
* operations it supports and which it doesn't.
*
);
/**
- * Set the session handler.
- *
- * @param Horde_Kolab_Session $session The session handler.
- *
- * @return NULL
- */
- public function setSession(Horde_Kolab_Session $session)
- {
- $this->_session = $session;
- }
-
- /**
- * Set the session factory.
- *
- * @param Horde_Kolab_Session_Factory_Interface $factory The session factory.
- *
- * @return NULL
- */
- public function setSessionFactory(Horde_Kolab_Session_Factory_Interface $factory)
- {
- $this->_factory = $factory;
- }
-
- /**
- * Retrieve a connected kolab session.
- *
- * @return Horde_Kolab_Session The connected session.
- *
- * @throws Horde_Kolab_Session_Exception
- */
- public function getSession($userId = null, $credentials = null)
- {
- if (!isset($this->_session)) {
- if (!isset($this->_factory)) {
- $this->_session = Horde_Kolab_Session_Singleton::singleton(
- $userId, $credentials
- );
- } else {
- $this->_session = $this->_factory->getSession($userId, $credentials);
- }
- }
- return $this->_session;
- }
-
- /**
* Find out if a set of login credentials are valid.
*
* For Kolab this requires to identify the IMAP server the user should