Package org.jbpm.pvm.internal.query

Examples of org.jbpm.pvm.internal.query.AbstractQuery


    @Override
     public Collection<BpmTask> getAllTasks(ProcessToolContext ctx) {
       Command<List<Task>> cmd = new Command<List<Task>>() {
         @Override
         public List<Task> execute(Environment environment) throws Exception {
           AbstractQuery q = new AbstractQuery() {
             @Override
             protected void applyPage(Query query) {
             }

             @Override
             protected void applyParameters(Query query) {
             }

             @Override
             public String hql() {
               StringBuilder hql = new StringBuilder();
               hql.append("select task ");
               hql.append("from ");
               hql.append(TaskImpl.class.getName());
               hql.append(" as task  ");
               hql.append("order by task.id DESC");
               return hql.toString();
             }
           };
           return (List<Task>) q.execute(environment);
         }
       };
       List<Task> tasks = getProcessEngine(ctx).execute(cmd);
       return findProcessInstancesForTasks(tasks, ctx);
     }
View Full Code Here


     public Collection<BpmTask> getProcessTaskInQueues(ProcessToolContext ctx, final ProcessInstance processInstance)
     {
       Command<List<Task>> cmd = new Command<List<Task>>() {
         @Override
         public List<Task> execute(Environment environment) throws Exception {
           AbstractQuery q = new AbstractQuery() {
             @Override
             protected void applyPage(Query query)
             {

             }
            
             @Override
             protected void applyParameters(Query query)
             {
               query.setString("executionId", processInstance.getInternalId());
             }

             @Override
             public String hql() {
               StringBuilder hql = new StringBuilder();
               hql.append("select task ")
               .append("from ")
               .append(TaskImpl.class.getName()).append(" as task, ")
               .append(ParticipationImpl.class.getName()).append(" as participation ")
               .append(" where participation.task = task ")
               .append(" and task.executionId = :executionId ");
               return hql.toString();
             }
           };
           return (List<Task>) q.execute(environment);
         }
       };
       List<Task> tasks = getProcessEngine(ctx).execute(cmd);
       return findProcessInstancesForTasks(tasks, ctx);
     }
View Full Code Here

           }

           Command<List<HistoryActivityInstance>> cmd = new Command<List<HistoryActivityInstance>>() {
               @Override
               public List<HistoryActivityInstance> execute(Environment environment) throws Exception {
                   AbstractQuery q = new AbstractQuery() {
                       @Override
                       protected void applyPage(Query query) {
                           query.setFirstResult(0);
                           query.setMaxResults(1);
                       }

                       @Override
                       protected void applyParameters(Query query) {
                           query.setString("userIds", user.getLogin());
                           query.setString("internalIds", log.getExecutionId());
                           query.setDate("minDate", minDate.getTime());
                           if (!taskNames.isEmpty()) {
                               query.setParameterList("taskName", taskNames);
                           }
                       }

                       @Override
                       public String hql() {
                           StringBuilder hql = new StringBuilder()
                                   .append("select act ")
                                   .append("from ")
                                   .append(HistoryTaskInstanceImpl.class.getName()).append(" as act, ")
                                   .append(HistoryProcessInstanceImpl.class.getName()).append(" as proc, ")
                                   .append(HistoryTaskImpl.class.getName()).append(" as task  ")
                                   .append(" where act.historyProcessInstance = proc ")
                                   .append(" and act.historyTask = task ")
                                   .append(" and act.endTime is not null ");
                           if (!taskNames.isEmpty()) {
                               hql.append(" and act.activityName in (:taskName) ");
                           }
                           hql.append(" and task.assignee = :userIds ")
                                   .append(" and task.endTime > :minDate ")
                                   .append(" and act.executionId = :internalIds ")
                                   .append(" order by act.endTime asc ");
                           return hql.toString();
                       }
                   };
                   return (List<HistoryActivityInstance>) q.execute(environment);
               }
           };

           List<HistoryActivityInstance> pastTasks = getProcessEngine(ctx).execute(cmd);
           if (!pastTasks.isEmpty()) {
View Full Code Here

     private BpmTask getMostRecentProcessHistoryTask(final ProcessInstance pi, final UserData user, final Calendar minDate, ProcessToolContext ctx) {
       Command<List<HistoryActivityInstance>> cmd = new Command<List<HistoryActivityInstance>>() {
         @Override
         public List<HistoryActivityInstance> execute(Environment environment) throws Exception {
           AbstractQuery q = new AbstractQuery() {
             @Override
             protected void applyPage(Query query) {
               query.setFirstResult(0);
               query.setMaxResults(1);
             }
             @Override
             protected void applyParameters(Query query) {
               query.setString("userIds", user.getLogin());
               query.setString("internalIds", pi.getInternalId());
               query.setDate("minDate", minDate.getTime());
             }
             @Override
             public String hql() {
               StringBuilder hql = new StringBuilder()
               .append("select act ")
               .append("from ")
               .append(HistoryTaskInstanceImpl.class.getName()).append(" as act, ")
               .append(HistoryProcessInstanceImpl.class.getName()).append(" as proc, ")
               .append(HistoryTaskImpl.class.getName()).append(" as task  ")
               .append(" where act.historyProcessInstance = proc ")
               .append(" and act.historyTask = task ")
               .append(" and act.endTime is not null ")
               .append(" and task.assignee = :userIds ")
               .append(" and task.endTime > :minDate ")
               .append(" and proc.processInstanceId = :internalIds ")
               .append(" order by act.endTime desc ");
               return hql.toString();
             }
           };
           return (List<HistoryActivityInstance>) q.execute(environment);
         }
       };

       List<HistoryActivityInstance> tasks = getProcessEngine(ctx).execute(cmd);
           if (tasks.isEmpty()) {
View Full Code Here

         return new ArrayList<ProcessQueue>()
       }
       Command<List<Map>> cmd = new Command<List<Map>>() {
         @Override
         public List<Map> execute(Environment environment) throws Exception {
           return (List<Map>) new AbstractQuery() {
             @Override
             protected void applyParameters(Query query) {
               query.setParameterList("groupIds", names);
             }
View Full Code Here

        final String taskId = bpmTask != null ? bpmTask.getInternalTaskId() : null;
        Command<List<Task>> cmd = new Command<List<Task>>() {
            @Override
            public List<Task> execute(Environment environment) throws Exception {
                AbstractQuery q = new AbstractQuery() {
                    @Override
                    protected void applyPage(Query query) {
                        query.setFirstResult(0);
                        query.setFetchSize(1);
                    }

                    @Override
                    protected void applyParameters(Query query) {
                        query.setParameterList("groupIds", java.util.Collections.singleton(pq.getName()));
                        if (taskId != null) {
                            query.setParameter("taskId", new Long(taskId));
                        }
                    }

                    @Override
                    public String hql() {
                        StringBuilder hql = new StringBuilder();
                        hql.append("select task ");
                        hql.append("from ");
                        hql.append(TaskImpl.class.getName());
                        hql.append(" as task ");
                        hql.append(", ");
                        hql.append(ParticipationImpl.class.getName());
                        hql.append(" as participant ");
                        hql.append("where participant.task=task ");
                        hql.append("and participant.type = 'candidate' ");
                        hql.append("and participant.groupId IN (:groupIds) ");
                        hql.append("and task.assignee is null ");
                        if (taskId != null) {
                            hql.append("and task.id = :taskId");
                        }
                        return hql.toString();
                    }
                };
                return (List<Task>) q.execute(environment);
            }
        };
        List<Task> taskList = processEngine.execute(cmd);
        if (taskList.isEmpty()) {
            loger.warning("No tasks found in queue: " + pq.getName());
View Full Code Here

               return new ArrayList<BpmTask>();
           }
           Command<List<Task>> cmd = new Command<List<Task>>() {
               @Override
               public List<Task> execute(Environment environment) throws Exception {
                   AbstractQuery q = new AbstractQuery() {
                       @Override
                       protected void applyPage(Query query) {
                           query.setFirstResult(0);
                       }

                       @Override
                       protected void applyParameters(Query query) {
                           query.setParameterList("executionId", executions.keySet());
                           if (userLogin != null) {
                               query.setParameterList("userLogin", java.util.Collections.singleton(userLogin));
                           }
                           if (taskNames != null && !taskNames.isEmpty()) {
                               query.setParameterList("taskNames", taskNames);
                           }
                       }

                       @Override
                       public String hql() {
                           StringBuilder hql = new StringBuilder();
                           hql.append("select task ");
                           hql.append("from ");
                           hql.append(TaskImpl.class.getName());
                           hql.append(" as task ");
                           hql.append("where executionId in (:executionId) ");
                           hql.append("and task.assignee ");
                           hql.append(userLogin != null ? " in (:userLogin) " : " is not null ");
                           if (taskNames != null && !taskNames.isEmpty()) {
                               hql.append("and task.name in (:taskNames) ");
                           }
                           return hql.toString();
                       }
                   };
                   return (List<Task>) q.execute(environment);
               }
           };
           List<Task> tasks = getProcessEngine(ctx).execute(cmd);
           return collectTasks(tasks, pi, ctx);
       }
View Full Code Here

         return false;
       }
       Command<List<Task>> cmd = new Command<List<Task>>() {
         @Override
         public List<Task> execute(Environment environment) throws Exception {
           AbstractQuery q = new AbstractQuery() {
             @Override
             protected void applyPage(Query query) {
               query.setFirstResult(0);
               query.setMaxResults(1);
             }

             @Override
             protected void applyParameters(Query query) {
               query.setParameterList("executionId", executions.keySet());
               query.setParameterList("assignee", java.util.Collections.singleton(user.getLogin()));
             }

             @Override
             public String hql() {
               StringBuilder hql = new StringBuilder();
               hql.append("select task ");
               hql.append("from ");
               hql.append(TaskImpl.class.getName());
               hql.append(" as task ");
               hql.append("where executionId in (:executionId) ");
               hql.append("and task.assignee in (:assignee) ");
               return hql.toString();
             }
           };
           return (List<Task>) q.execute(environment);
         }
       };
       List<Task> tasks = getProcessEngine(ctx).execute(cmd);
      
       long duration = System.currentTimeMillis() - start;
View Full Code Here

         return new ArrayList<BpmTask>();
       }
       Command<List<Task>> cmd = new Command<List<Task>>() {
         @Override
         public List<Task> execute(Environment environment) throws Exception {
           AbstractQuery q = new AbstractQuery() {
             @Override
             protected void applyPage(Query query) {
               query.setFirstResult(0);
             }

             @Override
             protected void applyParameters(Query query) {
               query.setParameterList("executionId", executions.keySet());
               query.setParameterList("assignee", java.util.Collections.singleton(user.getLogin()));
             }

             @Override
             public String hql() {
               StringBuilder hql = new StringBuilder();
               hql.append("select task ");
               hql.append("from ");
               hql.append(TaskImpl.class.getName());
               hql.append(" as task ");
               hql.append("where executionId in (:executionId) ");
               hql.append("and task.assignee in (:assignee) ");
               return hql.toString();
             }
           };
           return (List<Task>) q.execute(environment);
         }
       };
       List<Task> tasks = getProcessEngine(ctx).execute(cmd);
       return collectTasks(tasks, processInstance, ctx);
     }
View Full Code Here

        public List<String> getAvailableLogins(final String filter) {
            Command<List<User>> cmd = new Command<List<User>>() {
                @Override
                public List<User> execute(Environment environment) throws Exception {
                    AbstractQuery q = new AbstractQuery() {
                        @Override
                        protected void applyPage(Query query) {
                            query.setFirstResult(0);
                            query.setFetchSize(20);
                        }

                        @Override
                        protected void applyParameters(Query query) {
                            query.setParameter("filter", "%" + filter + "%");
                        }

                        @Override
                        public String hql() {
                            StringBuilder hql = new StringBuilder();
                            hql.append("select user ");
                            hql.append("from ");
                            hql.append(UserImpl.class.getName());
                            hql.append(" as user ");
                            hql.append("where id like :filter ");

                            return hql.toString();

                        }
                    };
                    return (List<User>) q.execute(environment);
                }
            };
            List<User> users = getProcessEngine(ProcessToolContext.Util.getThreadProcessToolContext()).execute(cmd);
            List<String> res = new ArrayList<String>();
            for (User u : users) {
View Full Code Here

TOP

Related Classes of org.jbpm.pvm.internal.query.AbstractQuery

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.