Mercurial > hg > isophonics-drupal-site
diff core/modules/user/src/UserDataInterface.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/modules/user/src/UserDataInterface.php Wed Nov 29 16:09:58 2017 +0000 @@ -0,0 +1,64 @@ +<?php + +namespace Drupal\user; + +/** + * Defines the user data service interface. + */ +interface UserDataInterface { + + /** + * Returns data stored for a user account. + * + * @param string $module + * The name of the module the data is associated with. + * @param int $uid + * (optional) The user account ID the data is associated with. + * @param string $name + * (optional) The name of the data key. + * + * @return mixed|array + * The requested user account data, depending on the arguments passed: + * - For $module, $name, and $uid, the stored value is returned, or NULL if + * no value was found. + * - For $module and $uid, an associative array is returned that contains + * the stored data name/value pairs. + * - For $module and $name, an associative array is returned whose keys are + * user IDs and whose values contain the stored values. + * - For $module only, an associative array is returned that contains all + * existing data for $module in all user accounts, keyed first by user ID + * and $name second. + */ + public function get($module, $uid = NULL, $name = NULL); + + /** + * Stores data for a user account. + * + * @param string $module + * The name of the module the data is associated with. + * @param int $uid + * The user account ID the data is associated with. + * @param string $name + * The name of the data key. + * @param mixed $value + * The value to store. Non-scalar values are serialized automatically. + */ + public function set($module, $uid, $name, $value); + + /** + * Deletes data stored for a user account. + * + * @param string|array $module + * (optional) The name of the module the data is associated with. Can also + * be an array to delete the data of multiple modules. + * @param int|array $uid + * (optional) The user account ID the data is associated with. If omitted, + * all data for $module is deleted. Can also be an array of IDs to delete + * the data of multiple user accounts. + * @param string $name + * (optional) The name of the data key. If omitted, all data associated with + * $module and $uid is deleted. + */ + public function delete($module = NULL, $uid = NULL, $name = NULL); + +}