public override DataUri[] GetItemsInWorkflowState(WorkflowInfo info, CallContext context)
{
Guid workflowStateId;
if (Guid.TryParse(info.StateID, out workflowStateId))
{
var items = Provider.GetItemsInWorkflowState(workflowStateId);
var result = items.Select(x => x.FieldValues
.Where(y => y.Id == FieldIDs.WorkflowState.Guid)
.Select(y => new DataUri(new ID(x.Id), LanguageManager.GetLanguage(y.Language), new Version(y.Version ?? 1)))
).ToList();
if (result.Any())
{
return result.Aggregate((x, y) => (x ?? new DataUri[] {}).Concat(y ?? new DataUri[] {})).ToArray();
}
return new DataUri[] {};
}
return new DataUri[] {};
}