public static void SetOperationRules(OperationRulePack rules) { var keys = OperationLogic.GetAllOperationInfos(TypeLogic.EntityToType[rules.Type]) .Select(a => a.OperationSymbol).ToHashSet(); cache.SetRules(rules, r => keys.Contains(r)); }
public static OperationRulePack GetOperationRules(Lite <RoleEntity> role, TypeEntity typeEntity) { var resources = OperationLogic.GetAllOperationInfos(TypeLogic.EntityToType[typeEntity]).Select(a => a.OperationSymbol); var result = new OperationRulePack { Role = role, Type = typeEntity, }; cache.GetRules(result, resources); var coercer = OperationCoercer.Instance.GetCoerceValue(role); result.Rules.ForEach(r => r.CoercedValues = EnumExtensions.GetValues <OperationAllowed>().Where(a => !coercer(r.Resource, a).Equals(a)).ToArray()); return(result); }
public void SetOperationRules(OperationRulePack rules) { Execute(MethodInfo.GetCurrentMethod(), () => OperationAuthLogic.SetOperationRules(rules)); }
public void SetOperationRules([Required, FromBody] OperationRulePack rules) { BasicPermission.AdminRules.AssertAuthorized(); OperationAuthLogic.SetOperationRules(rules); Schema.Current.InvalidateMetadata(); }
public void SetOperationRules(OperationRulePack rules) { BasicPermission.AdminRules.AssertAuthorized(); OperationAuthLogic.SetOperationRules(rules); }