diff options
author | Robin Appelman <icewind@owncloud.com> | 2014-07-09 15:32:33 +0200 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2014-07-14 15:10:51 +0200 |
commit | 20c1ce7f470211e53461be7893cb7320f0a2b452 (patch) | |
tree | addcdb91aa332c751651837364c3066da07e064b /lib/public/iuser.php | |
parent | 05ba9b3c64b5c4a109773fe776fd6a2ebd34502a (diff) | |
download | nextcloud-server-20c1ce7f470211e53461be7893cb7320f0a2b452.tar.gz nextcloud-server-20c1ce7f470211e53461be7893cb7320f0a2b452.zip |
Add public interfaces for User, UserManager and UserSession
Diffstat (limited to 'lib/public/iuser.php')
-rw-r--r-- | lib/public/iuser.php | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/lib/public/iuser.php b/lib/public/iuser.php new file mode 100644 index 00000000000..dc4acc7658f --- /dev/null +++ b/lib/public/iuser.php @@ -0,0 +1,105 @@ +<?php + +/** + * Copyright (c) 2014 Robin Appelman <icewind@owncloud.com> + * This file is licensed under the Affero General Public License version 3 or + * later. + * See the COPYING-README file. + */ + +namespace OCP; + +interface IUser { + /** + * get the user id + * + * @return string + */ + public function getUID(); + + /** + * get the displayname for the user, if no specific displayname is set it will fallback to the user id + * + * @return string + */ + public function getDisplayName(); + + /** + * set the displayname for the user + * + * @param string $displayName + * @return bool + */ + public function setDisplayName($displayName); + + /** + * returns the timestamp of the user's last login or 0 if the user did never + * login + * + * @return int + */ + public function getLastLogin(); + + /** + * updates the timestamp of the most recent login of this user + */ + public function updateLastLoginTimestamp(); + + /** + * Delete the user + * + * @return bool + */ + public function delete(); + + /** + * Set the password of the user + * + * @param string $password + * @param string $recoveryPassword for the encryption app to reset encryption keys + * @return bool + */ + public function setPassword($password, $recoveryPassword); + + /** + * get the users home folder to mount + * + * @return string + */ + public function getHome(); + + /** + * check if the backend allows the user to change his avatar on Personal page + * + * @return bool + */ + public function canChangeAvatar(); + + /** + * check if the backend supports changing passwords + * + * @return bool + */ + public function canChangePassword(); + + /** + * check if the backend supports changing display names + * + * @return bool + */ + public function canChangeDisplayName(); + + /** + * check if the user is enabled + * + * @return bool + */ + public function isEnabled(); + + /** + * set the enabled status for the user + * + * @param bool $enabled + */ + public function setEnabled($enabled); +} |