public static object GetSecurityObject(this ISecurityObjectRepository securityObjectRepository, object obj) { IEnumerable <SecurityObjectBuilder> resource = securityObjectRepository.GetAllBuilders(); object securityObject = resource.FirstOrDefault(p => p.RealObject == obj)?.SecurityObject; if (securityObject == null) { securityObject = resource.FirstOrDefault(p => p.SecurityObject == obj)?.SecurityObject; } return(securityObject); }
public static List <string> GetBlockedMembers(this ISecurityObjectRepository securityObjectRepository, object securityObject) { IEnumerable <SecurityObjectBuilder> resource = securityObjectRepository.GetAllBuilders(); SecurityObjectBuilder securityObjectMetaData = resource.FirstOrDefault(p => p.SecurityObject == securityObject); List <string> blockedMembers = new List <string>(); if (securityObjectMetaData != null) { blockedMembers.AddRange(securityObjectMetaData.BlockedProperties); blockedMembers.AddRange(securityObjectMetaData.BlockedNavigationProperties); } return(blockedMembers); }
public static IEnumerable <SecurityObjectBuilder> GetDuplicateBuilders(this ISecurityObjectRepository securityObjectRepository, IEnumerable <object> objects) { List <SecurityObjectBuilder> dublicateBuilders = new List <SecurityObjectBuilder>(); IEnumerable <SecurityObjectBuilder> allBuilders = securityObjectRepository.GetAllBuilders(); foreach (object obj in objects) { SecurityObjectBuilder builder = allBuilders.FirstOrDefault(p => Equals(p.RealObject, obj) || Equals(p.SecurityObject, obj)); if (builder != null) { dublicateBuilders.Add(builder); } } return(dublicateBuilders); }
public static bool TryRemoveObject(this ISecurityObjectRepository securityObjectRepository, object targetObject) { bool result; IEnumerable <SecurityObjectBuilder> resource = securityObjectRepository.GetAllBuilders(); SecurityObjectBuilder objToRemove = resource.FirstOrDefault(p => p.SecurityObject == targetObject || p.RealObject == targetObject); if (objToRemove != null) { securityObjectRepository.RemoveBuilder(objToRemove); result = true; } else { result = false; } return(result); }
public static SecurityObjectBuilder GetObjectMetaData(this ISecurityObjectRepository securityObjectRepository, object targetObject) { IEnumerable <SecurityObjectBuilder> resource = securityObjectRepository.GetAllBuilders(); return(resource.FirstOrDefault(p => p.SecurityObject == targetObject || p.RealObject == targetObject)); }