define an interface for the User Backend
This commit is contained in:
parent
d28be8de64
commit
fdcbc23ed6
|
@ -21,7 +21,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* This class provides wrapper methods for user management. Multiple backends are
|
||||
* This class provides wrapper methods for user management. Multiple backends are
|
||||
* supported. User management operations are delegated to the configured backend for
|
||||
* execution.
|
||||
*
|
||||
|
@ -83,7 +83,7 @@ class OC_User {
|
|||
* Set the User Authentication Module
|
||||
*/
|
||||
public static function useBackend( $backend = 'database' ){
|
||||
if($backend instanceof OC_User_Backend){
|
||||
if($backend instanceof OC_User_Interface){
|
||||
self::$_usedBackends[get_class($backend)]=$backend;
|
||||
}else{
|
||||
// You'll never know what happens
|
||||
|
|
|
@ -42,7 +42,7 @@ define('OC_USER_BACKEND_CHECK_PASSWORD', 0x000100);
|
|||
*
|
||||
* Subclass this for your own backends, and see OC_User_Example for descriptions
|
||||
*/
|
||||
abstract class OC_User_Backend {
|
||||
abstract class OC_User_Backend implements OC_User_Interface {
|
||||
|
||||
protected $possibleActions = array(
|
||||
OC_USER_BACKEND_CREATE_USER => 'createUser',
|
||||
|
|
|
@ -0,0 +1,69 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* ownCloud - user interface
|
||||
*
|
||||
* @author Arthur Schiwon
|
||||
* @copyright 2012 Arthur Schiwon blizzz@owncloud.org
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 3 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public
|
||||
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
interface OC_User_Interface {
|
||||
|
||||
/**
|
||||
* @brief Get all supported actions
|
||||
* @returns bitwise-or'ed actions
|
||||
*
|
||||
* Returns the supported actions as int to be
|
||||
* compared with OC_USER_BACKEND_CREATE_USER etc.
|
||||
*/
|
||||
public function getSupportedActions();
|
||||
|
||||
/**
|
||||
* @brief Check if backend implements actions
|
||||
* @param $actions bitwise-or'ed actions
|
||||
* @returns boolean
|
||||
*
|
||||
* Returns the supported actions as int to be
|
||||
* compared with OC_USER_BACKEND_CREATE_USER etc.
|
||||
*/
|
||||
public function implementsActions($actions);
|
||||
|
||||
/**
|
||||
* @brief delete a user
|
||||
* @param $uid The username of the user to delete
|
||||
* @returns true/false
|
||||
*
|
||||
* Deletes a user
|
||||
*/
|
||||
public function deleteUser($uid);
|
||||
|
||||
/**
|
||||
* @brief Get a list of all users
|
||||
* @returns array with all uids
|
||||
*
|
||||
* Get a list of all users.
|
||||
*/
|
||||
public function getUsers();
|
||||
|
||||
/**
|
||||
* @brief check if a user exists
|
||||
* @param string $uid the username
|
||||
* @return boolean
|
||||
*/
|
||||
public function userExists($uid);
|
||||
|
||||
}
|
Loading…
Reference in New Issue