/// <summary> /// Slow method for mapping all the possible inconsistencies in the /// repository and the security component's stored and cached values. /// </summary> /// <param name="contentIds">List of all content ids in the repository.</param> /// <param name="groupIds">List of all the security containers in the repository. It will be enumerated once.</param> private static SecurityConsistencyResult CheckSecurityConsistency(IEnumerable <int> contentIds, IEnumerable <int> groupIds) { var result = new SecurityConsistencyResult(); result.StartTimer(); var secCachedEntities = SecurityHandler.GetCachedEntities(); CheckSecurityEntityConsistency(contentIds, secCachedEntities, result); CheckMembershipConsistency(groupIds, result); CheckAceConsistency(result, secCachedEntities); result.StopTimer(); return(result); }