/// <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);
}