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 void SetPropertyRules(PropertyRulePack rules) { cache.SetRules(rules, r => r.RootType == rules.Type); }
public static void SetPermissionRules(PermissionRulePack rules) { cache.SetRules(rules, r => true); }
public static void SetQueryRules(QueryRulePack rules) { string[] queryKeys = QueryLogic.Queries.GetTypeQueries(TypeLogic.EntityToType[rules.Type]).Keys.Select(qn => QueryUtils.GetKey(qn)).ToArray(); cache.SetRules(rules, r => queryKeys.Contains(r.Key)); }