Class Permission
Describes a security permission applied either to a ModelEntity, a ModelProperty, a ModelAction or Model. An instance of Permission is not evaluable in memory, but must be passed to e.g. the StringTemplate compiler. An instance of Permission represents a row-level permission.
Implements
Inherited Members
Namespace: TimeCockpit.Data.Security
Assembly: TimeCockpit.Data.dll
Syntax
public class Permission : ModelElement, IDynamicMetaObjectProvider, INotifyPropertyChanged, IDataErrorInfo
Constructors
Permission()
Initializes a new instance of the Permission class.
Declaration
public Permission()
Permission(IEnumerable<KeyValuePair<Object, Object>>)
Initializes a new instance of the Permission class.
Declaration
public Permission(IEnumerable<KeyValuePair<object, object>> properties)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.Object, System.Object>> | properties | Collection of properties. |
Permission(Permission)
Initializes a new instance of the Permission class.
Declaration
public Permission(Permission element)
Parameters
| Type | Name | Description |
|---|---|---|
| Permission | element | The element to copy. |
Properties
AccessType
Gets or sets the AccessType of the Permission.
Declaration
public PermissionType AccessType { get; set; }
Property Value
| Type | Description |
|---|---|
| PermissionType |
Condition
Gets or sets a TCQL expression that returns either true or false.
Declaration
public string Condition { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Function
Gets the CLR function for the Permission
Declaration
public Func<EntityObject, Environment, IEnumerable<QueryParameter>, object> Function { get; }
Property Value
| Type | Description |
|---|---|
| System.Func<EntityObject, Environment, System.Collections.Generic.IEnumerable<QueryParameter>, System.Object> |
Remarks
The function needs the EntityObject on which it should operate as the first parameter.
IsDisabled
Gets or sets a value indicating whether the Permission is disalbed or not.
Declaration
public bool IsDisabled { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
Message
Gets or sets the message of the Permission.
Declaration
public string Message { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String | The message of the Permission. |
Methods
Accept(ModelElementVisitor)
Accepts a visitor. Dispatches the correct visit handler in the visitor for the Permission
Declaration
public override void Accept(ModelElementVisitor visitor)
Parameters
| Type | Name | Description |
|---|---|---|
| ModelElementVisitor | visitor | the visitor to accept. |
Overrides
Validate(ref IList<PropertyValidationMessage>, Boolean)
Validates a ModelElement according to certain rules.
Declaration
protected override void Validate(ref IList<PropertyValidationMessage> messages, bool validateRecursively)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IList<PropertyValidationMessage> | messages | An list of strings that stores that picks up the validation errors of a model element. |
| System.Boolean | validateRecursively | Indicates wheter to validate only the current model element or all its children (recursively) as well. |
Overrides
Remarks
The rules the ModelElement is validated against are dependent on the type of ModelElement that is validated. This method can be overridden to provide custom validation behavior for subclasses of ModelElement
When Validate(ref IList<PropertyValidationMessage>, Boolean) is called on a modelelement, the Validate(ref IList<PropertyValidationMessage>, Boolean) method of all children attatched to the modelelemnt are validated recursivly.