Overview

Packages

  • Kolab
    • Session

Classes

  • Horde_Kolab_Session_Abstract
  • Horde_Kolab_Session_Base
  • Horde_Kolab_Session_Decorator_Anonymous
  • Horde_Kolab_Session_Decorator_Base
  • Horde_Kolab_Session_Decorator_Logged
  • Horde_Kolab_Session_Decorator_Stored
  • Horde_Kolab_Session_Exception
  • Horde_Kolab_Session_Exception_Badlogin
  • Horde_Kolab_Session_Factory_Imap
  • Horde_Kolab_Session_Imap
  • Horde_Kolab_Session_Storage_Mock
  • Horde_Kolab_Session_Storage_Session
  • Horde_Kolab_Session_Valid_Base
  • Horde_Kolab_Session_Valid_Decorator_Logged

Interfaces

  • Horde_Kolab_Session
  • Horde_Kolab_Session_Storage
  • Horde_Kolab_Session_Valid
  • Overview
  • Package
  • Class
  • Tree
  1: <?php
  2: /**
  3:  * The interface describing Horde_Kolab_Session handlers.
  4:  *
  5:  * PHP version 5
  6:  *
  7:  * @category Kolab
  8:  * @package  Kolab_Session
  9:  * @author   Gunnar Wrobel <wrobel@pardus.de>
 10:  * @license  http://www.horde.org/licenses/lgpl21 LGPL 2.1
 11:  * @link     http://pear.horde.org/index.php?package=Kolab_Session
 12:  */
 13: 
 14: /**
 15:  * The interface describing Horde_Kolab_Session handlers.
 16:  *
 17:  * Horde_Kolab_Server currently has no caching so we mainly cache some core user
 18:  * information in the Kolab session handler as reading this data is expensive
 19:  * and it is sufficient to read it once per session.
 20:  *
 21:  * The users account id needs to be provided from the outside. Any
 22:  * additional Kolab user data relevant for the user session should be
 23:  * accessed via the Horde_Kolab_Session class.
 24:  *
 25:  * Copyright 2008-2012 Horde LLC (http://www.horde.org/)
 26:  *
 27:  * See the enclosed file COPYING for license information (LGPL). If you
 28:  * did not receive this file, see http://www.horde.org/licenses/lgpl21.
 29:  *
 30:  * @category Kolab
 31:  * @package  Kolab_Session
 32:  * @author   Gunnar Wrobel <wrobel@pardus.de>
 33:  * @license  http://www.horde.org/licenses/lgpl21 LGPL 2.1
 34:  * @link     http://pear.horde.org/index.php?package=Kolab_Session
 35:  */
 36: interface Horde_Kolab_Session
 37: {
 38:     /**
 39:      * Try to connect the session handler.
 40:      *
 41:      * @param string $user_id     The user ID to connect with.
 42:      * @param array  $credentials An array of login credentials. For Kolab,
 43:      *                            this must contain a "password" entry.
 44:      *
 45:      * @return NULL
 46:      *
 47:      * @throws Horde_Kolab_Session_Exception If the connection failed.
 48:      */
 49:     public function connect($user_id = null, array $credentials = null);
 50: 
 51:     /**
 52:      * Return the user id used for connecting the session.
 53:      *
 54:      * @return string The user id.
 55:      */
 56:     public function getId();
 57: 
 58:     /**
 59:      * Return the users mail address.
 60:      *
 61:      * @return string The users mail address.
 62:      */
 63:     public function getMail();
 64: 
 65:     /**
 66:      * Return the users uid.
 67:      *
 68:      * @return string The users uid.
 69:      */
 70:     public function getUid();
 71: 
 72:     /**
 73:      * Return the users name.
 74:      *
 75:      * @return string The users name.
 76:      */
 77:     public function getName();
 78: 
 79:     /**
 80:      * Return the imap server.
 81:      *
 82:      * @return string The imap host for the current user.
 83:      */
 84:     public function getImapServer();
 85: 
 86:     /**
 87:      * Return the freebusy server.
 88:      *
 89:      * @return string The freebusy host for the current user.
 90:      */
 91:     public function getFreebusyServer();
 92: 
 93:     /**
 94:      * Import the session data from an array.
 95:      *
 96:      * @param array The session data.
 97:      *
 98:      * @return NULL
 99:      */
100:     public function import(array $session_data);
101: 
102:     /**
103:      * Export the session data as array.
104:      *
105:      * @return array The session data.
106:      */
107:     public function export();
108: 
109:     /**
110:      * Clear the session data.
111:      *
112:      * @return NULL
113:      */
114:     public function purge();
115: }
116: 
API documentation generated by ApiGen