[jbpm-commits] JBoss JBPM SVN: r6522 - jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Jul 22 06:25:07 EDT 2010


Author: rebody
Date: 2010-07-22 06:25:05 -0400 (Thu, 22 Jul 2010)
New Revision: 6522

Modified:
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/TaskQueryImpl.java
Log:
JBPM-2902 use setString() replace splicing string

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/TaskQueryImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/TaskQueryImpl.java	2010-07-21 05:01:09 UTC (rev 6521)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/query/TaskQueryImpl.java	2010-07-22 10:25:05 UTC (rev 6522)
@@ -44,6 +44,7 @@
 /**
  * @author Tom Baeyens
  * @author Heiko Braun <heiko.braun at jboss.com>
+ * @author Huisheng Xu
  */
 public class TaskQueryImpl extends AbstractQuery implements TaskQuery {
 
@@ -60,10 +61,10 @@
   protected String activityName;
 
   /* groupIds transports the groupIds from the hql to the applyParameters */
-  protected List<String> groupIds; 
+  protected List<String> groupIds;
 
   public TaskQuery assignee(String assignee) {
-    if (candidate!=null) {
+    if (candidate != null) {
       throw new JbpmException("assignee(...) cannot be combined with candidate(...) in one query");
     }
     this.assignee = assignee;
@@ -128,34 +129,71 @@
   }
 
   protected void applyParameters(Query query) {
-    if (assignee!=null) {
-      log.debug("setting parameter assignee: "+assignee);
+    // assignee parameter
+    if (assignee != null) {
+      if (log.isDebugEnabled()) {
+        log.debug("setting parameter assignee: " + assignee);
+      }
       query.setString("assignee", assignee);
     }
-    
-    if (candidate!=null) {
-      log.debug("setting parameter candidateUserId: "+candidate);
+
+    // canidate parameter
+    if (candidate != null) {
+      if (log.isDebugEnabled()) {
+        log.debug("setting parameter candidateUserId: " + candidate);
+      }
       query.setString("candidateUserId", candidate);
-      
-      if (groupIds!=null) {
-        log.debug("setting parameter candidateGroupIds: "+groupIds);
+
+      if (groupIds != null) {
+        if (log.isDebugEnabled()) {
+          log.debug("setting parameter candidateGroupIds: " + groupIds);
+        }
         query.setParameterList("candidateGroupIds", groupIds);
       }
     }
+
+    // executionId parameter
+    if (executionId != null) {
+      if (log.isDebugEnabled()) {
+        log.debug("setting parameter executionId: " + executionId);
+      }
+      query.setString("executionId", executionId);
+    }
+
+    if (processInstanceId != null) {
+      if (log.isDebugEnabled()) {
+        log.debug("setting parameter processInstanceId: " + processInstanceId);
+      }
+      query.setString("processInstanceId", processInstanceId);
+    }
+
+    if (activityName != null) {
+      if (log.isDebugEnabled()) {
+        log.debug("setting parameter activityName: " + activityName);
+      }
+      query.setString("activityName", activityName );
+    }
+
+    if (processDefinitionId != null) {
+      if (log.isDebugEnabled()) {
+        log.debug("setting parameter processDefinitionId: " + processDefinitionId);
+      }
+      query.setString("processDefinitionId", processDefinitionId);
+    }
   }
 
   public String hql() {
-  	StringBuilder hql = new StringBuilder();
-  	hql.append("select ");
-    
+    StringBuilder hql = new StringBuilder();
+    hql.append("select ");
+
     // participations
-    if (candidate!=null) {
+    if (candidate != null) {
       if (count) {
         hql.append("count(distinct task.id) ");
       } else {
         hql.append("distinct task.id ");
       }
-      
+
       hql.append("from ");
       hql.append(ParticipationImpl.class.getName());
       hql.append(" as participant join participant.task as task ");
@@ -172,7 +210,7 @@
         groupIds = new ArrayList<String>();
         for (Group group: groups) {
           groupIds.add(group.getId());
-        }  
+        }
         appendWhereClause("(participant.userId = :candidateUserId or participant.groupId in (:candidateGroupIds))", hql);
       }
     }
@@ -182,37 +220,37 @@
       } else {
         hql.append("task ");
       }
-      
+
       hql.append("from ");
       hql.append(TaskImpl.class.getName());
       hql.append(" as task ");
     }
-    
-    if (suspended!=null) {
+
+    if (suspended != null) {
       if (suspended) {
-        appendWhereClause("task.state = '"+ExecutionImpl.STATE_SUSPENDED+"' ", hql);
+        appendWhereClause("task.state = '" + ExecutionImpl.STATE_SUSPENDED + "' ", hql);
       } else {
-        appendWhereClause("task.state != '"+ExecutionImpl.STATE_SUSPENDED+"' ", hql);
+        appendWhereClause("task.state != '" + ExecutionImpl.STATE_SUSPENDED + "' ", hql);
       }
     }
-    
-    if (executionId!=null) {
-      appendWhereClause("task.execution.id = '"+executionId+"' ", hql);
+
+    if (executionId != null) {
+      appendWhereClause("task.execution.id = :executionId ", hql);
     }
 
-    if (processInstanceId!=null) {
-      appendWhereClause("task.processInstance.id = '"+processInstanceId+"' ", hql);
+    if (processInstanceId != null) {
+      appendWhereClause("task.processInstance.id = :processInstanceId ", hql);
     }
 
-    if (activityName!=null) {
-      appendWhereClause("task.execution.activityName = '"+activityName+"' ", hql);
+    if (activityName != null) {
+      appendWhereClause("task.execution.activityName = :activityName ", hql);
     }
 
-    if (processDefinitionId!=null) {
-      appendWhereClause("task.processInstance.processDefinitionId = '"+processDefinitionId+"' ", hql);
+    if (processDefinitionId != null) {
+      appendWhereClause("task.processInstance.processDefinitionId = :processDefinitionId ", hql);
     }
 
-    if (assignee!=null) {
+    if (assignee != null) {
       appendWhereClause("task.assignee = :assignee ", hql);
     } else if (unassigned) {
       appendWhereClause("task.assignee is null ", hql);
@@ -225,7 +263,7 @@
     log.debug(hqlQuery);
     return hqlQuery;
   }
-  
+
   @Override
   public Object execute(Session session) {
     Object result = super.execute(session);



More information about the jbpm-commits mailing list