C# Class fCraft.SecurityController

Controller for setting and checking per-rank permissions and per-player exceptions. Used by World.AccessSecurity, World.BuildSecurity, and Zone.
Inheritance: ICloneable, INotifiesOnChange
Show file Open project: GlennMR/800craft Class Usage Examples

Private Properties

Property Type Description
RaiseChangedEvent void
UpdatePlayerListCache void

Public Methods

Method Description
Check ( [ info ) : bool

Checks whether a player is allowed by this controller.

CheckDetailed ( [ info ) : SecurityCheckResult

Checks player's permission status with this controller, in detail.

Clone ( ) : object

Creates a copy of an existing controller.

Exclude ( [ info ) : PermissionOverride

Either specially excludes a player (if their state was previously neutral), or removes a specific inclusion.

GetDescription ( [ target, [ noun, [ verb ) : string

Creates a description string of the controller.

Include ( [ info ) : PermissionOverride

Either specially includes a player (if their state was previously neutral), or removes a specific exclusion.

Reset ( ) : void

Resets all permissions: minimum rank, excluded player list, and included player list.

ResetExcludedList ( ) : void

Clears the list of specifically excluded players.

ResetIncludedList ( ) : void

Clears the list of specifically included players.

ResetMinRank ( ) : void
SecurityController ( ) : System

Creates a new controller with no restrictions.

SecurityController ( [ other ) : System

Creates a copy of an existing controller.

SecurityController ( [ el, bool parseExceptions ) : System
Serialize ( ) : System.Xml.Linq.XElement
Serialize ( [ tagName ) : System.Xml.Linq.XElement

Private Methods

Method Description
RaiseChangedEvent ( ) : void
UpdatePlayerListCache ( ) : void

Method Details

Check() public method

Checks whether a player is allowed by this controller.
public Check ( [ info ) : bool
info [ Player to check.
return bool

CheckDetailed() public method

Checks player's permission status with this controller, in detail.
public CheckDetailed ( [ info ) : SecurityCheckResult
info [ Player to check.
return SecurityCheckResult

Clone() public method

Creates a copy of an existing controller.
public Clone ( ) : object
return object

Exclude() public method

Either specially excludes a player (if their state was previously neutral), or removes a specific inclusion.
public Exclude ( [ info ) : PermissionOverride
info [ Player's info.
return PermissionOverride

GetDescription() public method

Creates a description string of the controller.
public GetDescription ( [ target, [ noun, [ verb ) : string
target [ Name of the object that owns this controller.
noun [ The type of target (e.g. "world" or "zone").
verb [ The action, in past tense, that this /// controller manages (e.g. "accessed" or "modified").
return string

Include() public method

Either specially includes a player (if their state was previously neutral), or removes a specific exclusion.
public Include ( [ info ) : PermissionOverride
info [ Player's info.
return PermissionOverride

Reset() public method

Resets all permissions: minimum rank, excluded player list, and included player list.
public Reset ( ) : void
return void

ResetExcludedList() public method

Clears the list of specifically excluded players.
public ResetExcludedList ( ) : void
return void

ResetIncludedList() public method

Clears the list of specifically included players.
public ResetIncludedList ( ) : void
return void

ResetMinRank() public method

public ResetMinRank ( ) : void
return void

SecurityController() public method

Creates a new controller with no restrictions.
public SecurityController ( ) : System
return System

SecurityController() public method

Creates a copy of an existing controller.
public SecurityController ( [ other ) : System
other [
return System

SecurityController() public method

public SecurityController ( [ el, bool parseExceptions ) : System
el [
parseExceptions bool
return System

Serialize() public method

public Serialize ( ) : System.Xml.Linq.XElement
return System.Xml.Linq.XElement

Serialize() public method

public Serialize ( [ tagName ) : System.Xml.Linq.XElement
tagName [
return System.Xml.Linq.XElement