/// <summary>
        ///
        /// </summary>
        public virtual IPage <HistoricInstance> GetAllProcessInstances(Pageable pageable)
        {
            IHistoricProcessInstanceQuery query = historyService.CreateHistoricProcessInstanceQuery();

            sortApplier.ApplySort(query, pageable);

            return(pageRetriever.LoadPage(query, pageable, processInstanceConverter));
        }
 public virtual long FindHistoricProcessInstanceCountByQueryCriteria(IHistoricProcessInstanceQuery historicProcessInstanceQuery)
 {
     if (HistoryManager.HistoryEnabled)
     {
         return(historicProcessInstanceDataManager.FindHistoricProcessInstanceCountByQueryCriteria(historicProcessInstanceQuery));
     }
     return(0);
 }
        /// <summary>
        ///
        /// </summary>
        public virtual IPage <HistoricInstance> GetProcessInstances(Pageable pageable)
        {
            IHistoricProcessInstanceQuery query = historyService.CreateHistoricProcessInstanceQuery();

            logger.LogWarning("Securite read not implementation");
            //query = securityService.restrictProcessInstQuery(query, SecurityPolicy.READ);

            sortApplier.ApplySort(query, pageable);

            return(pageRetriever.LoadPage(query, pageable, processInstanceConverter));
        }
Exemple #4
0
        public virtual IHistoricProcessInstance Execute(ICommandContext commandContext)
        {
            var historyService = commandContext.ProcessEngineConfiguration.HistoryService;

            IHistoricProcessInstanceQuery query = historyService.CreateHistoricProcessInstanceQuery().SetProcessInstanceId(instanceId);

            IHistoricProcessInstance processInstance = query.SingleResult();

            if (processInstance != null)
            {
                HistoricProcessInstanceEntityImpl.EnsureStarterInitialized(new HistoricProcessInstanceEntityImpl[]
                {
                    processInstance as HistoricProcessInstanceEntityImpl
                });
            }

            return(processInstance);
        }
 public virtual IList <IHistoricProcessInstance> FindHistoricProcessInstancesByQueryCriteria(IHistoricProcessInstanceQuery historicProcessInstanceQuery)
 {
     if (HistoryManager.HistoryEnabled)
     {
         return(historicProcessInstanceDataManager.FindHistoricProcessInstancesByQueryCriteria(historicProcessInstanceQuery));
     }
     return(new List <IHistoricProcessInstance>());
 }
        public virtual IList <IHistoricProcessInstance> FindHistoricProcessInstancesAndVariablesByQueryCriteria(IHistoricProcessInstanceQuery historicProcessInstanceQuery)
        {
            var hisQuery = historicProcessInstanceQuery as HistoricProcessInstanceQueryImpl;

            // paging doesn't work for combining process instances and variables
            // due to an outer join, so doing it in-memory
            if (hisQuery.FirstResult < 0 || hisQuery.MaxResults <= 0)
            {
                return(new List <IHistoricProcessInstance>());
            }

            int firstResult = hisQuery.FirstResult;
            int maxResults  = hisQuery.MaxResults;

            // setting max results, limit to 20000 results for performance reasons
            if (hisQuery.ProcessInstanceVariablesLimit != null)
            {
                hisQuery.MaxResults = hisQuery.ProcessInstanceVariablesLimit.GetValueOrDefault();
            }
            else
            {
                hisQuery.MaxResults = ProcessEngineConfiguration.HistoricProcessInstancesQueryLimit;
            }
            hisQuery.FirstResult = 0;

            IList <IHistoricProcessInstance> instanceList = DbSqlSession.SelectListWithRawParameterWithoutFilter <HistoricProcessInstanceEntityImpl, IHistoricProcessInstance>("selectHistoricProcessInstancesWithVariablesByQueryCriteria", hisQuery, hisQuery.FirstResult, hisQuery.MaxResults);

            if (instanceList != null && instanceList.Count > 0)
            {
                if (firstResult > 0)
                {
                    if (firstResult <= instanceList.Count)
                    {
                        int toIndex = firstResult + Math.Min(maxResults, instanceList.Count - firstResult);
                        return(instanceList.Skip(firstResult).Take(toIndex).ToList());
                    }
                    else
                    {
                        return(new List <IHistoricProcessInstance>());
                    }
                }
                else
                {
                    int toIndex = Math.Min(maxResults, instanceList.Count);
                    return(instanceList.Skip(0).Take(toIndex).ToList());
                }
            }

            return(instanceList);
        }
 public virtual IList <IHistoricProcessInstance> FindHistoricProcessInstancesByQueryCriteria(IHistoricProcessInstanceQuery historicProcessInstanceQuery)
 {
     return(DbSqlSession.SelectList <HistoricProcessInstanceEntityImpl, IHistoricProcessInstance>("selectHistoricProcessInstancesByQueryCriteria", historicProcessInstanceQuery));
 }
 public virtual long FindHistoricProcessInstanceCountByQueryCriteria(IHistoricProcessInstanceQuery historicProcessInstanceQuery)
 {
     return(DbSqlSession.SelectOne <HistoricProcessInstanceEntityImpl, long?>("selectHistoricProcessInstanceCountByQueryCriteria", historicProcessInstanceQuery).GetValueOrDefault());
 }