/// <exclude /> public static IEnumerable <UserPermissionDefinition> GetUserPermissionDefinitions(string username) { Verify.ArgumentNotNullOrEmpty(username, "username"); IEnumerable <UserPermissionDefinition> userPermissionDefinitions = UserPermissionDefinitionProviderPluginFacade.GetPermissionsByUser(username); var result = new List <UserPermissionDefinition>(); foreach (UserPermissionDefinition userPermissionDefinition in userPermissionDefinitions) { EntityToken entityToken = userPermissionDefinition.EntityToken; if (entityToken == null) { continue; } if (!entityToken.IsValid()) { if (UserPermissionDefinitionProviderPluginFacade.CanAlterDefinitions) { Log.LogWarning("PermissionTypeFacade", "System removing invalid permission setting for user '{0}' because the data entity token could not be validated. Token was '{1}'.", username, userPermissionDefinition.SerializedEntityToken); UserPermissionDefinitionProviderPluginFacade.RemoveUserPermissionDefinition(new UserToken(username), userPermissionDefinition.SerializedEntityToken); } continue; } result.Add(userPermissionDefinition); } return(result); }