C# 클래스 ScrewTurn.Wiki.UsersStorageProvider

Implements a Users Storage Provider.
상속: IUsersStorageProviderV30
파일 보기 프로젝트 열기: mono/ScrewTurnWiki 1 사용 예제들

공개 메소드들

메소드 설명
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