ToEntry() private method

private ToEntry ( int nodeId ) : SecurityEntry
nodeId int
return SecurityEntry
示例#1
0
        public void SetPermission(ISecurityMember securityMember, bool isInheritable, PermissionType permissionType, PermissionValue permissionValue)
        {
            if (securityMember == null)
                throw new ArgumentNullException("securityMember");
            if (permissionType == null)
                throw new ArgumentNullException("permissionType");

            Assert(PermissionType.SetPermissions);

            var entry = PermissionEvaluator.Instance.GetExplicitEntry(this._node.Path, securityMember.Id);
            var allowBits = 0;
            var denyBits = 0;
            if (entry != null)
            {
                allowBits = entry.AllowBits;
                denyBits = entry.DenyBits;
            }
            SetBits(ref allowBits, ref denyBits, permissionType, permissionValue);

            var memberId = securityMember.Id;
            var permSet = new PermissionSet(memberId, isInheritable, allowBits, denyBits);
            entry = permSet.ToEntry(this.NodeId);

            DataProvider.Current.SetPermission(entry);

            Reset();
        }
示例#2
0
        private void SetPermissionsWithoutReset(int principalId, bool isInheritable, PermissionValue[] permissionValues)
        {
            var permSet = new PermissionSet(principalId, isInheritable, permissionValues);
            var allowBits = permSet.AllowBits;
            var denyBits = permSet.DenyBits;
            
            SetBits(ref allowBits, ref denyBits);
            permSet = new PermissionSet(principalId, isInheritable, allowBits, denyBits);
            var entry = permSet.ToEntry(NodeId);

            DataProvider.Current.SetPermission(entry);
        }