Show / Hide Table of Contents

Class HierarchySentry

Guards Hierarchy entities - only admins can create, update, delete them.

Inheritance
Object
Sentry
Sentry<HierarchyTableInfo>
HierarchySentry
Implements
ICloneable
Inherited Members
Sentry<HierarchyTableInfo>.GetInterestingFieldsInTable(TableInfo)
Sentry<HierarchyTableInfo>.InterestedInAnyInstanceOf<T>()
Sentry<HierarchyTableInfo>.ComputeDerivedTableRights()
Sentry<HierarchyTableInfo>.SuperComputeDerivedTableRights()
Sentry<HierarchyTableInfo>.ComputeDerivedTableRight(TableRight)
Sentry<HierarchyTableInfo>.SuperComputeTableRights()
Sentry<HierarchyTableInfo>.AddInterestingTables(TableInfo[])
Sentry<HierarchyTableInfo>.ComputeLicenseExpiration()
Sentry<HierarchyTableInfo>.SuperComputeFieldRights()
Sentry<HierarchyTableInfo>.CanCoverTable(TableInfo)
Sentry<HierarchyTableInfo>.IsTableCovered(TableInfo)
Sentry<HierarchyTableInfo>.SetAllTableRights(ETableRight, String)
Sentry<HierarchyTableInfo>.GetOwnerFieldRight()
Sentry<HierarchyTableInfo>.GetMainRight()
Sentry<HierarchyTableInfo>.AnalyzeQuery(PrivateSelect)
Sentry<HierarchyTableInfo>.ToString()
Sentry<HierarchyTableInfo>.InterestingFields
Sentry<HierarchyTableInfo>.SentryQueryInfo
Sentry<HierarchyTableInfo>.MainTable
Sentry.kTableRights
Sentry.kFieldRights
Sentry._tableRights
Sentry._fieldRights
Sentry._lookups
Sentry.DemandPlugins()
Sentry.CreateSentry(TableInfo)
Sentry.CreateSentries(Select)
Sentry.BeginIgnoreSentry()
Sentry.BeginIgnoreRowSentry()
Sentry.IgnoreRowSentry()
Sentry.IgnoreSentry()
Sentry.IterateLookups(LookupCollection)
Sentry.GetIntField(FieldInfo[])
Sentry.GetPersistedIntField(FieldInfo[])
Sentry.GetIsGhostField(FieldInfo)
Sentry.GetDateTimeField(FieldInfo)
Sentry.GetStringField(FieldInfo)
Sentry.ClearRights()
Sentry.GetRecordOwnershipIndex()
Sentry.GetRecordOwnershipIndex(Int32, Int32)
Sentry.MapTableToFieldRights(TableInfo, TableRight, FieldInfo[])
Sentry.MakeFieldFromTableRight(TableRight)
Sentry.MakeFieldFromTableRight(TableRight, ETableRight)
Sentry.MakeFieldFromTableRight(ETableRight)
Sentry.GetTableRight(TableInfo)
Sentry.GetFieldRight(FieldInfo)
Sentry.CanTableDo(TableInfo, ETableRight, Boolean)
Sentry.CanFieldDo(FieldInfo, EFieldRight, Boolean)
Sentry.IsFieldCovered(FieldInfo)
Sentry.GetGroupFromAssociate(Int32)
Sentry.IsContactDatabaseOwner(Int32)
Sentry.IsContactEmployeeUserOwner(Int32)
Sentry.IsContactSatelliteOwner(Int32)
Sentry.IsContactLicenseOwner(Int32)
Sentry.IsContactCurrentDatabaseOwner(Int32)
Sentry.IsPersonAssociate(Int32, Boolean)
Sentry.IsAssociatesOwnerContact(Int32, Int32)
Sentry.Lookups
Sentry.Parent
Sentry.Registered
Namespace: SuperOffice.CRM.Security
Assembly: SoDataBase.dll
Syntax
public class HierarchySentry : Sentry<HierarchyTableInfo>, ICloneable
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

Constructors

HierarchySentry(HierarchyTableInfo)

Create a KbEntry sentry.

Declaration
public HierarchySentry(HierarchyTableInfo tableInfo)
Parameters
Type Name Description
HierarchyTableInfo tableInfo
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

HierarchySentry(HierarchyTableInfo, ISoDataLookup)

Create a KbEntry sentry for a particular KbEntry row. The row's associate_id will control the user's permissions with respect to this row.

Declaration
public HierarchySentry(HierarchyTableInfo tableInfo, ISoDataLookup lookup)
Parameters
Type Name Description
HierarchyTableInfo tableInfo
ISoDataLookup lookup
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

Properties

AssociateId

Hierarchy does not have owner associate-id

Declaration
public override int AssociateId { get; }
Property Value
Type Description
Int32
Overrides
Sentry.AssociateId
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

GroupId

Hierarchy does not have owner group-id

Declaration
public override int GroupId { get; }
Property Value
Type Description
Int32
Overrides
Sentry.GroupId
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

IsGhostRow

Returns whether the primary key is a ghost field (i.e., we're looking at a nonexistent record, as opposed to just looking at a new one)

Declaration
public override bool IsGhostRow { get; }
Property Value
Type Description
Boolean
Overrides
Sentry.IsGhostRow
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

IsNew

Is the row saved to teh database (persisted primary key == 0)

Declaration
public override bool IsNew { get; }
Property Value
Type Description
Boolean
Overrides
Sentry.IsNew
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

RegisteredAssociateId

Guards Hierarchy entities - only admins can create, update, delete them.

Declaration
public override int RegisteredAssociateId { get; }
Property Value
Type Description
Int32
Overrides
Sentry.RegisteredAssociateId
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

RegisteredAssociateIdField

The field that holds the associate id of the user first creating the item.

Declaration
public override FieldInfo RegisteredAssociateIdField { get; }
Property Value
Type Description
FieldInfo
Overrides
Sentry.RegisteredAssociateIdField
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

RegisteredField

The field that holds information about when the item was first created.

Declaration
public override FieldInfo RegisteredField { get; }
Property Value
Type Description
FieldInfo
Overrides
Sentry.RegisteredField
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

RowId

Should return a KbEntry.KbEntry_id

Declaration
public override int RowId { get; }
Property Value
Type Description
Int32
Overrides
Sentry.RowId
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

Methods

ComputeFieldRights()

Guards Hierarchy entities - only admins can create, update, delete them.

Declaration
protected override void ComputeFieldRights()
Overrides
SuperOffice.CRM.Security.Sentry<SuperOffice.CRM.Data.HierarchyTableInfo>.ComputeFieldRights()
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

ComputeTableRights()

Computes table rights for Hierarchy tables. Deny create + update + delete rights to non-admins

Declaration
protected override void ComputeTableRights()
Overrides
SuperOffice.CRM.Security.Sentry<SuperOffice.CRM.Data.HierarchyTableInfo>.ComputeTableRights()
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

GetRowSentry()

Guards Hierarchy entities - only admins can create, update, delete them.

Declaration
public override Sentry GetRowSentry()
Returns
Type Description
Sentry
Overrides
Sentry.GetRowSentry()
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

GetTableInfoFromQuery<TargetTableInfo>()

Get tables of the given type from our query

Declaration
protected List<TargetTableInfo> GetTableInfoFromQuery<TargetTableInfo>()
    where TargetTableInfo : TableInfo
Returns
Type Description
List<TargetTableInfo>

List of tableinfos of the given type, from the query

Type Parameters
Name Description
TargetTableInfo

Type of table to look for

Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

GetTableRight()

Guards Hierarchy entities - only admins can create, update, delete them.

Declaration
public static TableRight GetTableRight()
Returns
Type Description
TableRight
Remarks

The Hierarchy row automatically creates a sentry, because Hierarchy is also an Entity.

Implements

System.ICloneable

Extension Methods

EnumUtil.MapEnums<From, To>(From)
Converters.MapEnums<From, To>(From)
© SuperOffice. All rights reserved.
SuperOffice |  Community |  Release Notes |  Privacy |  Site feedback |  Search Docs |  About Docs |  Contribute |  Back to top