Пример #1
0
        public virtual IList <ProcessInstanceDto> queryProcessInstances(ProcessInstanceQueryDto queryDto, int?firstResult, int?maxResults)
        {
            ProcessEngine engine = ProcessEngine;

            queryDto.ObjectMapper = ObjectMapper;
            ProcessInstanceQuery query = queryDto.toQuery(engine);

            IList <ProcessInstance> matchingInstances;

            if (firstResult != null || maxResults != null)
            {
                matchingInstances = executePaginatedQuery(query, firstResult, maxResults);
            }
            else
            {
                matchingInstances = query.list();
            }

            IList <ProcessInstanceDto> instanceResults = new List <ProcessInstanceDto>();

            foreach (ProcessInstance instance in matchingInstances)
            {
                ProcessInstanceDto resultInstance = ProcessInstanceDto.fromProcessInstance(instance);
                instanceResults.Add(resultInstance);
            }
            return(instanceResults);
        }