示例#1
0
        public IEnumerable <IWorkItemEvent> Classify(WorkItemResolutionRequest request)
        {
            if (request == null)
            {
                throw new ArgumentNullException(nameof(request));
            }

            var workItem = request.WorkItem;

            if (workItem == null || workItem.Updates == null || !workItem.Updates.Any())
            {
                return(Enumerable.Empty <IWorkItemEvent>());
            }

            if (!IsSupported(workItem))
            {
                return(Enumerable.Empty <IWorkItemEvent>());
            }

            try
            {
                return(ClassifyInternal(request));
            }
            catch (Exception ex)
            {
                return(new[] { new ErrorClassifyingWorkItemEvent(GetWorkItemWrapper(workItem), this, ex) });
            }
        }
示例#2
0
 protected abstract IEnumerable <IWorkItemEvent> ClassifyInternal(WorkItemResolutionRequest request);