C# Класс ScrewTurn.Wiki.UsersStorageProvider

Implements a Users Storage Provider.
Наследование: IUsersStorageProviderV30
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
AddUser ( string username, string displayName, string password, string email, bool active, System.DateTime dateTime ) : UserInfo

Adds a new User.

AddUserGroup ( string name, string description ) : UserGroup

Adds a new user group.

GetUser ( string username ) : UserInfo

Tries to retrieve the information about a user account.

GetUserByEmail ( string email ) : UserInfo

Tries to retrieve the information about a user account.

GetUserGroups ( ) : UserGroup[]

Gets all the user groups.

GetUsers ( ) : UserInfo[]

Gets the complete list of Users.

GetUsersWithData ( string key ) : string>.IDictionary

Gets all the users that have the specified element in their data.

Init ( IHostV30 host, string config ) : void

Initializes the Provider.

ModifyUser ( UserInfo user, string newDisplayName, string newPassword, string newEmail, bool newActive ) : UserInfo

Modifies a User.

ModifyUserGroup ( UserGroup group, string description ) : UserGroup

Modifies a user group.

NotifyCookieLogin ( UserInfo user ) : void

Notifies the provider that a user has logged in through the authentication cookie.

NotifyLogout ( UserInfo user ) : void

Notifies the provider that a user has logged out.

RemoveUser ( UserInfo user ) : bool

Removes a User.

RemoveUserGroup ( UserGroup group ) : bool

Removes a user group.

RetrieveAllUserData ( UserInfo user ) : string>.IDictionary

Retrieves all the user data elements for a user.

RetrieveUserData ( UserInfo user, string key ) : string

Gets a user data element, if any.

SetUserMembership ( UserInfo user, string groups ) : UserInfo

Sets the group memberships of a user account.

Shutdown ( ) : void

Method invoked on shutdown.

This method might not be invoked in some cases.

StoreUserData ( UserInfo user, string key, string value ) : bool

Stores a user data element, overwriting the previous one if present.

TestAccount ( UserInfo user, string password ) : bool

Tests a Password for a User account.

TryAutoLogin ( System context ) : UserInfo

Tries to login a user directly through the provider using the current HttpContext and without username/password.

TryManualLogin ( string username, string password ) : UserInfo

Tries to login a user directly through the provider.

Приватные методы

Метод Описание
BackupGroupsFile ( ) : void
BackupUsersFile ( ) : void
DumpUserGroups ( UserGroup groups ) : void

Dumps user groups on disk.

DumpUsers ( UserInfo users ) : void

Writes on disk all the Users.

This method does not lock resources, therefore a lock is need in the caller.

FindGroup ( string name ) : UserGroup

Finds a user group.

GetFullPath ( string filename ) : string
GetGroupsForUser ( string user, UserGroup groups ) : string[]

Gets the names of all the groups a user is member of.

IsSelected ( UserGroup group, string groups ) : bool

Determines whether a user group is contained in an array of user group names.

LoadLocalInstance ( UserInfo user ) : LocalUserInfo

Loads a proper local instance of a user account.

UserExists ( UserInfo user ) : bool

Searches for a User.

VerifyAndPerformUpgrade ( ) : void

Verifies the need for a data upgrade, and performs it when needed.

Описание методов

AddUser() публичный Метод

Adds a new User.
If username, password or email are null. If username, password or email are empty.
public AddUser ( string username, string displayName, string password, string email, bool active, System.DateTime dateTime ) : UserInfo
username string The Username.
displayName string The display name (can be null).
password string The Password.
email string The Email address.
active bool A value specifying whether or not the account is active.
dateTime System.DateTime The Account creation Date/Time.
Результат UserInfo

AddUserGroup() публичный Метод

Adds a new user group.
If name or description are null. If name is empty.
public AddUserGroup ( string name, string description ) : UserGroup
name string The name of the group.
description string The description of the group.
Результат UserGroup

GetUser() публичный Метод

Tries to retrieve the information about a user account.
If username is null. If username is empty.
public GetUser ( string username ) : UserInfo
username string The username.
Результат UserInfo

GetUserByEmail() публичный Метод

Tries to retrieve the information about a user account.
If email is null. If email is empty.
public GetUserByEmail ( string email ) : UserInfo
email string The email address.
Результат UserInfo

GetUserGroups() публичный Метод

Gets all the user groups.
public GetUserGroups ( ) : UserGroup[]
Результат UserGroup[]

GetUsers() публичный Метод

Gets the complete list of Users.
public GetUsers ( ) : UserInfo[]
Результат UserInfo[]

GetUsersWithData() публичный Метод

Gets all the users that have the specified element in their data.
If key is null. If key is empty.
public GetUsersWithData ( string key ) : string>.IDictionary
key string The key of the data.
Результат string>.IDictionary

Init() публичный Метод

Initializes the Provider.
If host or config are null. If config is not valid or is incorrect.
public Init ( IHostV30 host, string config ) : void
host IHostV30 The Host of the Provider.
config string The Configuration data, if any.
Результат void

ModifyUser() публичный Метод

Modifies a User.
If user or newEmail are null. If newEmail is empty.
public ModifyUser ( UserInfo user, string newDisplayName, string newPassword, string newEmail, bool newActive ) : UserInfo
user UserInfo The Username of the user to modify.
newDisplayName string The new display name (can be null).
newPassword string The new Password (null or blank to keep the current password).
newEmail string The new Email address.
newActive bool A value indicating whether the account is active.
Результат UserInfo

ModifyUserGroup() публичный Метод

Modifies a user group.
If group or description are null.
public ModifyUserGroup ( UserGroup group, string description ) : UserGroup
group UserGroup The group to modify.
description string The new description of the group.
Результат UserGroup

NotifyCookieLogin() публичный Метод

Notifies the provider that a user has logged in through the authentication cookie.
If user is null.
public NotifyCookieLogin ( UserInfo user ) : void
user UserInfo The user who has logged in.
Результат void

NotifyLogout() публичный Метод

Notifies the provider that a user has logged out.
If user is null.
public NotifyLogout ( UserInfo user ) : void
user UserInfo The user who has logged out.
Результат void

RemoveUser() публичный Метод

Removes a User.
If user is null.
public RemoveUser ( UserInfo user ) : bool
user UserInfo The User to remove.
Результат bool

RemoveUserGroup() публичный Метод

Removes a user group.
If group is null.
public RemoveUserGroup ( UserGroup group ) : bool
group UserGroup The group to remove.
Результат bool

RetrieveAllUserData() публичный Метод

Retrieves all the user data elements for a user.
If user is null.
public RetrieveAllUserData ( UserInfo user ) : string>.IDictionary
user UserInfo The user.
Результат string>.IDictionary

RetrieveUserData() публичный Метод

Gets a user data element, if any.
If user or key are null. If key is empty.
public RetrieveUserData ( UserInfo user, string key ) : string
user UserInfo The user the data belongs to.
key string The key of the data element.
Результат string

SetUserMembership() публичный Метод

Sets the group memberships of a user account.
If user or groups are null.
public SetUserMembership ( UserInfo user, string groups ) : UserInfo
user UserInfo The user account.
groups string The groups the user account is member of.
Результат UserInfo

Shutdown() публичный Метод

Method invoked on shutdown.
This method might not be invoked in some cases.
public Shutdown ( ) : void
Результат void

StoreUserData() публичный Метод

Stores a user data element, overwriting the previous one if present.
If user or key are null. If key is empty.
public StoreUserData ( UserInfo user, string key, string value ) : bool
user UserInfo The user the data belongs to.
key string The key of the data element (case insensitive).
value string The value of the data element, null for deleting the data.
Результат bool

TestAccount() публичный Метод

Tests a Password for a User account.
If user or password are null.
public TestAccount ( UserInfo user, string password ) : bool
user UserInfo The User account.
password string The Password to test.
Результат bool

TryAutoLogin() публичный Метод

Tries to login a user directly through the provider using the current HttpContext and without username/password.
If context is null.
public TryAutoLogin ( System context ) : UserInfo
context System The current HttpContext.
Результат UserInfo

TryManualLogin() публичный Метод

Tries to login a user directly through the provider.
If username or password are null.
public TryManualLogin ( string username, string password ) : UserInfo
username string The username.
password string The password.
Результат UserInfo