[jbpm-commits] JBoss JBPM SVN: r5132 - in jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal: task and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Jun 26 08:51:27 EDT 2009


Author: jbarrez
Date: 2009-06-26 08:51:27 -0400 (Fri, 26 Jun 2009)
New Revision: 5132

Modified:
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CommentImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeElementImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeInstanceImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskDefinitionImpl.java
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskImpl.java
Log:
Went over collection return values of API (JBPM-2304)

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ActivityImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -38,8 +38,8 @@
   private static final long serialVersionUID = 1L;
   
   protected ObjectReference<ActivityBehaviour> behaviourReference;
-  protected List<TransitionImpl> outgoingTransitions;
-  protected List<TransitionImpl> incomingTransitions;
+  protected List<TransitionImpl> outgoingTransitions = new ArrayList<TransitionImpl>();
+  protected List<TransitionImpl> incomingTransitions = new ArrayList<TransitionImpl>();
   protected TransitionImpl defaultOutgoingTransition;
   protected ActivityImpl parentActivity;
 
@@ -48,7 +48,8 @@
 
   protected ActivityCoordinatesImpl coordinates;
   
-  transient protected Map<String, TransitionImpl> outgoingTransitionsMap;
+  // Do not initialize. Caching is based on the nullity of this map
+  transient protected Map<String, TransitionImpl> outgoingTransitionsMap = null;
   
   /**
    * Use {@link ProcessDefinitionImpl#createActivity()} or {@link ActivityImpl#createActivity()} instead.
@@ -105,9 +106,6 @@
    * @throws NullPointerException if transition is null.
    */
   public Transition addOutgoingTransition(TransitionImpl transition) {
-    if (outgoingTransitions==null) {
-      outgoingTransitions = new ArrayList<TransitionImpl>();
-    }
     if (! outgoingTransitions.contains(transition)) {
       transition.setSource(this);
       transition.setSourceIndex(outgoingTransitions.size());
@@ -131,15 +129,10 @@
    * leaving transitions, the transition's source will be nulled. 
    */
   public boolean removeOutgoingTransition(TransitionImpl transition) {
-    if ( (transition!=null)
-         && (outgoingTransitions!=null)
-       ) {
+    if (transition!=null) {
       boolean isRemoved = outgoingTransitions.remove(transition);
       if (isRemoved) {
         transition.setSource(null);
-        if (outgoingTransitions.isEmpty()) {
-          outgoingTransitions = null;
-        }
         clearOutgoingTransitionsMap();
       }
       return isRemoved;
@@ -194,7 +187,7 @@
 
   /** indicates if this activity has leaving transitions */
   public boolean hasOutgoingTransitions() {
-    return ((outgoingTransitions!=null) && (!outgoingTransitions.isEmpty()));
+    return !outgoingTransitions.isEmpty();
   }
 
   /** sets the outgoingTransitions to the given list of outgoingTransitions.
@@ -205,7 +198,7 @@
    * source will be nulled.
    */
   public void setOutgoingTransitions(List<TransitionImpl> outgoingTransitions) {
-    if (this.outgoingTransitions!=null) {
+    if (!this.outgoingTransitions.isEmpty()) {
       List<TransitionImpl> removedTransitions = new ArrayList<TransitionImpl>(outgoingTransitions);
       for (TransitionImpl removedTransition: removedTransitions) {
         removeOutgoingTransition(removedTransition);
@@ -217,7 +210,7 @@
         addOutgoingTransition(addedTransition);
       }
     } else {
-      this.outgoingTransitions = null;
+      this.outgoingTransitions = new ArrayList<TransitionImpl>();
     }
     clearOutgoingTransitionsMap();
   }
@@ -232,9 +225,6 @@
    */
   public Transition addIncomingTransition(TransitionImpl transition) {
     transition.setDestination(this);
-    if (incomingTransitions==null) {
-      incomingTransitions = new ArrayList<TransitionImpl>();
-    }
     incomingTransitions.add(transition);
     return transition;
   }
@@ -245,14 +235,8 @@
    * @return true if a transition was removed.
    */
   public boolean removeIncomingTransition(TransitionImpl transition) {
-    if ( (transition!=null)
-         && (incomingTransitions!=null)
-         && (incomingTransitions.remove(transition))
-       ) {
+    if ( (transition!=null) && (incomingTransitions.remove(transition))) {
       transition.setDestination(null);
-      if (incomingTransitions.isEmpty()) {
-        incomingTransitions = null;
-      }
       return true;
     }
     return false;
@@ -267,7 +251,7 @@
 
   /** indicates if this activity has arriving transitions */
   public boolean hasIncomingTransitions() {
-    return ((incomingTransitions!=null) && (!incomingTransitions.isEmpty()));
+    return !incomingTransitions.isEmpty();
   }
 
 
@@ -278,7 +262,7 @@
    * destination will be nulled.
    */
   public void setIncomingTransitions(List<TransitionImpl> incomingTransitions) {
-    if (this.incomingTransitions!=null) {
+    if (!this.incomingTransitions.isEmpty()) {
       for (TransitionImpl removedTransition: this.incomingTransitions) {
         removedTransition.setDestination(null);
       }
@@ -342,11 +326,9 @@
   public Map<String, Transition> getOutgoingTransitionsMap() {
     if(outgoingTransitionsMap == null){
       this.outgoingTransitionsMap = new HashMap<String, TransitionImpl>();
-      if (outgoingTransitions!=null) {
-        for (TransitionImpl transition: outgoingTransitions) {
-          if (! this.outgoingTransitionsMap.containsKey(transition.getName())) {
-            this.outgoingTransitionsMap.put(transition.getName(), transition);
-          }
+      for (TransitionImpl transition: outgoingTransitions) {
+        if (! this.outgoingTransitionsMap.containsKey(transition.getName())) {
+          this.outgoingTransitionsMap.put(transition.getName(), transition);
         }
       }
     }

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CommentImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CommentImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/CommentImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -23,14 +23,12 @@
 
 import java.io.Serializable;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.Date;
 import java.util.List;
 
 import org.jbpm.api.JbpmException;
 import org.jbpm.api.model.Comment;
 import org.jbpm.pvm.internal.env.Environment;
-import org.jbpm.pvm.internal.task.TaskImpl;
 import org.jbpm.pvm.internal.util.Clock;
 import org.jbpm.pvm.internal.util.EqualsUtil;
 
@@ -43,7 +41,7 @@
   protected String userId = null;
   protected Date time = null;
   protected String message = null;
-  protected List<CommentImpl> comments = null;
+  protected List<CommentImpl> comments = new ArrayList<CommentImpl>();
 
   public CommentImpl() {
   }
@@ -64,9 +62,6 @@
     if (message==null) {
       throw new JbpmException("message is null");
     }
-    if (this.comments==null) {
-      comments = new ArrayList<CommentImpl>();
-    }
     CommentImpl reply = new CommentImpl(message);
     comments.add(reply);
     return reply;
@@ -76,15 +71,12 @@
     if (comment==null) {
       throw new JbpmException("reply is null");
     }
-    if (comments!=null) {
+    if (comments.contains(comment)) {
       comments.remove(comment);
     }
   }
   
   public List<Comment> getComments() {
-    if (comments==null) {
-      return Collections.EMPTY_LIST;
-    }
     return (List)comments;
   }
   

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -24,7 +24,6 @@
 import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -109,7 +108,7 @@
   protected String id;
 
   /** are concurrent executions that related to this execution. */
-  protected Collection<ExecutionImpl> executions;
+  protected Collection<ExecutionImpl> executions = new ArrayList<ExecutionImpl>();
 
   /** the parent child relation of executions is convenient for some forms of
    * concurrency. */
@@ -123,10 +122,10 @@
   protected ExecutionImpl subProcessInstance;
 
   /** swimlanes */
-  protected Map<String, SwimlaneImpl> swimlanes;
+  protected Map<String, SwimlaneImpl> swimlanes = new HashMap<String, SwimlaneImpl>();
 
   /** the free text comments users make on this execution */
-  protected Set<CommentImpl> comments;
+  protected Set<CommentImpl> comments = new LinkedHashSet<CommentImpl>();
   
   /** reference to the current activity instance history record */
   protected Long historyActivityInstanceDbid;
@@ -136,7 +135,7 @@
 
   protected int priority = Priority.NORMAL;
 
-  protected Map<String, Variable> systemVariables;
+  protected Map<String, Variable> systemVariables = new HashMap<String, Variable>();
 
   // persistent indicators of the current position ////////////////////////////
   
@@ -347,12 +346,10 @@
     }
     
     // end all child executions
-    if (executions!=null) {
-      // making a copy of the executions to prevent ConcurrentMoidificationException
-      List<ExecutionImpl> executionsToEnd = new ArrayList<ExecutionImpl>(executions);
-      for (ExecutionImpl child: executionsToEnd) {
-        child.end(state);
-      }
+   // making a copy of the executions to prevent ConcurrentMoidificationException
+    List<ExecutionImpl> executionsToEnd = new ArrayList<ExecutionImpl>(executions);
+    for (ExecutionImpl child: executionsToEnd) {
+      child.end(state);
     }
     
     setState(state);
@@ -812,32 +809,21 @@
   // swimlanes ////////////////////////////////////////////////////////////////
   
   public void addSwimlane(SwimlaneImpl swimlane) {
-    if (swimlanes==null) {
-      swimlanes = new HashMap<String, SwimlaneImpl>();
-    }
     swimlanes.put(swimlane.getName(), swimlane);
     swimlane.setExecution(this);
   }
   
   public SwimlaneImpl getSwimlane(String swimlaneName) {
-    if (swimlanes==null) {
-      return null;
-    }
     return swimlanes.get(swimlaneName);
   }
   
   public void removeSwimlane(SwimlaneImpl swimlane) {
-    swimlanes.remove(swimlane.getName());
-    swimlane.setExecution(null);
+      swimlanes.remove(swimlane.getName());
+      swimlane.setExecution(null);
   }
 
   public SwimlaneImpl getInitializedSwimlane(SwimlaneDefinitionImpl swimlaneDefinition) {
     String swimlaneName = swimlaneDefinition.getName();
-
-    if (swimlanes==null) {
-      swimlanes = new HashMap<String, SwimlaneImpl>();
-    }
-
     SwimlaneImpl swimlane = swimlanes.get(swimlaneName);
     if (swimlane==null) {
       swimlane = createSwimlane(swimlaneName);
@@ -874,9 +860,6 @@
     if (comment==null) {
       throw new JbpmException("comment is null");
     }
-    if (comments==null) {
-      comments = new LinkedHashSet<CommentImpl>();
-    }
     comments.add(comment);
   }
 
@@ -916,9 +899,6 @@
 
   public void addExecution(ExecutionImpl execution) {
     execution.setParent(this);
-    if (executions==null) {
-      executions = new ArrayList<ExecutionImpl>();
-    }
     executions.add(execution);
     executionsMap = null;
   }
@@ -930,7 +910,7 @@
   }
 
   public void removeExecution(ExecutionImpl child) {
-    if (executions!=null) {
+    if (executions.contains(child)) {
       if (executions.remove(child)) {
         child.setParent(null);
 
@@ -943,9 +923,7 @@
   }
 
   public Map<String, Execution> getExecutionsMap() {
-    if ( (executionsMap==null)
-         && (executions!=null)
-        ) {
+    if ((executionsMap==null)) {
       // initialize executionsMap cache
       executionsMap = new HashMap<String, Execution>();
       for(ExecutionImpl execution: executions) {
@@ -982,10 +960,8 @@
       activityNames.add(activityName);
     }
   
-    if (executions!=null) {
-      for (ExecutionImpl childExecution: executions) {
-        childExecution.addActiveActivityNames(activityNames);
-      }
+    for (ExecutionImpl childExecution: executions) {
+      childExecution.addActiveActivityNames(activityNames);
     }
   
     return activityNames;
@@ -997,12 +973,10 @@
       return this;
     }
 
-    if (executions!=null) {
-      for (ExecutionImpl childExecution: executions) {
-        ExecutionImpl found = childExecution.findActiveExecutionIn(activityName);
-        if (found!=null) {
-          return found;
-        }
+    for (ExecutionImpl childExecution: executions) {
+      ExecutionImpl found = childExecution.findActiveExecutionIn(activityName);
+      if (found!=null) {
+        return found;
       }
     }
 
@@ -1017,15 +991,11 @@
 
   public void createSystemVariable(String key, Object value, String typeName) {
     Variable variable = createVariableObject(key, value, typeName);
-    
-    if (systemVariables==null) {
-      systemVariables = new HashMap<String, Variable>();
-    }
     systemVariables.put(variable.getKey(), variable);
   }
 
   public void setSystemVariable(String key, Object value) {
-    Variable variable = (systemVariables!=null ? (Variable) systemVariables.get(key) : null);
+    Variable variable = systemVariables.get(key);
     if (variable!=null) {
       log.debug("setting system variable '"+key+"' in '"+this+"' to value '"+value+"'");
       variable.setValue(value);
@@ -1036,7 +1006,7 @@
   }
   
   public Object getSystemVariable(String key) {
-    Variable variable = (systemVariables!=null ? (Variable) systemVariables.get(key) : null);
+    Variable variable = systemVariables.get(key);
     if (variable!=null) {
       return variable.getValue();
     }
@@ -1044,7 +1014,7 @@
   }
   
   public boolean removeSystemVariable(String key) {
-    if (systemVariables!=null) {
+    if (systemVariables.containsKey(key)) {
       return (systemVariables.remove(key)!=null);
     }
     return false;
@@ -1261,9 +1231,6 @@
   }
 
   public List<Comment> getComments() {
-    if (comments==null) {
-      return Collections.emptyList();
-    }
     return new ArrayList<Comment>(comments);
   }
 

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ProcessDefinitionImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -71,7 +71,7 @@
   /** the activity which is executed when the process starts */
   protected ActivityImpl initial;
   
-  protected Map<String, TaskDefinitionImpl> taskDefinitions;
+  protected Map<String, TaskDefinitionImpl> taskDefinitions = new HashMap<String, TaskDefinitionImpl>();
   
   protected String imageResourceName = null;
 
@@ -136,17 +136,11 @@
   // task definitions /////////////////////////////////////////////////////////
   
   public void addTaskDefinitionImpl(TaskDefinitionImpl taskDefinition) {
-    if (taskDefinitions==null) {
-      taskDefinitions = new HashMap<String, TaskDefinitionImpl>();
-    }
     taskDefinitions.put(taskDefinition.getName(), taskDefinition);
   }
   
   public TaskDefinitionImpl getTaskDefinition(String name) {
-    if (taskDefinitions!=null) {
-      return taskDefinitions.get(name);
-    }
-    return null;
+    return taskDefinitions.get(name);
   }
 
   // basic methods ////////////////////////////////////////////////////////////

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeElementImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeElementImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeElementImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -34,8 +34,8 @@
 
   private static final long serialVersionUID = 1L;
 
-  protected List<VariableDefinitionImpl> variableDefinitions;
-  protected Set<TimerDefinitionImpl> timerDefinitions;
+  protected List<VariableDefinitionImpl> variableDefinitions = new ArrayList<VariableDefinitionImpl>();
+  protected Set<TimerDefinitionImpl> timerDefinitions = new HashSet<TimerDefinitionImpl>();
   
   public boolean isLocalScope() {
     return hasVariableDefinitions() || hasTimerDefinitions();
@@ -44,9 +44,7 @@
   // variable definitions /////////////////////////////////////////////////////
   
   public boolean hasVariableDefinitions() {
-    return ( (variableDefinitions!=null)
-             && (!variableDefinitions.isEmpty())
-           );
+    return !variableDefinitions.isEmpty();
   }
 
   public List<VariableDefinitionImpl> getVariableDefinitions() {
@@ -58,9 +56,6 @@
 
   public VariableDefinitionImpl createVariableDefinition() {
     VariableDefinitionImpl variableDefinition = new VariableDefinitionImpl();
-    if (variableDefinitions==null) {
-      variableDefinitions = new ArrayList<VariableDefinitionImpl>();
-    }
     variableDefinitions.add(variableDefinition);
     return variableDefinition;
   }
@@ -82,9 +77,6 @@
   
   public TimerDefinitionImpl createTimerDefinition() {
     TimerDefinitionImpl timerDefinition = new TimerDefinitionImpl();
-    if (timerDefinitions==null) {
-      timerDefinitions = new HashSet<TimerDefinitionImpl>();
-    }
     timerDefinitions.add(timerDefinition);
     return timerDefinition;
   }

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeInstanceImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeInstanceImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ScopeInstanceImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -54,7 +54,7 @@
   protected int dbversion;
 
   protected boolean hasVariables;
-  protected Map<String, Variable> variables;
+  protected Map<String, Variable> variables = new HashMap<String, Variable>();
   
   protected String state;
   protected String suspendHistoryState;
@@ -68,7 +68,6 @@
       if (log.isTraceEnabled()) {
         log.trace("initializing variables in scope "+scope);
       }
-      variables = new HashMap<String, Variable>();
       for (VariableDefinitionImpl variableDefinition: variableDefinitions) {
         String key = variableDefinition.getName();
         Object value = variableDefinition.getInitValue(outerExecution);
@@ -84,10 +83,6 @@
 
   public void createVariable(String key, Object value, String typeName) {
     Variable variable = createVariableObject(key, value, typeName);
-    
-    if (variables==null) {
-      variables = new HashMap<String, Variable>();
-    }
     variables.put(variable.getKey(), variable);
     hasVariables = true;
 

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/SwimlaneImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -45,7 +45,7 @@
   protected String name = null;
   protected String assignee = null;
   protected ExecutionImpl execution = null;
-  protected Set<ParticipationImpl> participations = null;
+  protected Set<ParticipationImpl> participations = new HashSet<ParticipationImpl>();
   protected SwimlaneDefinitionImpl swimlaneDefinition = null;
   
   // cloning //////////////////////////////////////////////////////////////////
@@ -78,9 +78,6 @@
   // participations /////////////////////////////////////////////////////////////
   
   public Set<ParticipationImpl> getParticipations() {
-    if (participations ==null) {
-      return Collections.emptySet();
-    }
     return participations;
   }
 
@@ -98,9 +95,6 @@
   
   private Participation addParticipation(ParticipationImpl participation) {
     participation.setSwimlane(this);
-    if (participations ==null) {
-      participations = new HashSet<ParticipationImpl>();
-    }
     participations.add(participation);
     return participation;
   }
@@ -109,9 +103,7 @@
     if (participant==null) {
       throw new JbpmException("participant is null");
     }
-    if ( (participations !=null)
-         && (participations.remove(participant))
-       ) {
+    if (participations.remove(participant)) {
       ((ParticipationImpl)participant).setSwimlane(null);
     }
   }

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskDefinitionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskDefinitionImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskDefinitionImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -22,6 +22,7 @@
 package org.jbpm.pvm.internal.task;
 
 import java.io.Serializable;
+import java.util.ArrayList;
 import java.util.List;
 
 import org.jbpm.pvm.internal.util.Priority;
@@ -36,7 +37,7 @@
 
   protected String dueDateDuration;
   protected String form;
-  protected List<TaskDefinitionImpl> subTaskDefinitions;
+  protected List<TaskDefinitionImpl> subTaskDefinitions = new ArrayList<TaskDefinitionImpl>();
   protected int priority = Priority.NORMAL;
   protected SwimlaneDefinitionImpl swimlaneDefinition;
   protected Descriptor taskHandlerDescriptor;

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskImpl.java	2009-06-26 12:14:40 UTC (rev 5131)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/task/TaskImpl.java	2009-06-26 12:51:27 UTC (rev 5132)
@@ -68,7 +68,7 @@
   protected String description;
 
   protected String assignee;
-  protected Set<ParticipationImpl> participations;
+  protected Set<ParticipationImpl> participations = new HashSet<ParticipationImpl>();
 
   protected String form;
   protected Date create;
@@ -77,7 +77,7 @@
   protected boolean isSignalling;
 
   // protected VariableMap variableMap;
-  protected List<CommentImpl> comments;
+  protected List<CommentImpl> comments = new ArrayList<CommentImpl>();
 
   protected int priority = Priority.NORMAL;
 
@@ -138,20 +138,14 @@
 
   // TODO: Why does it return the impl. not the interface?
   public Set<ParticipationImpl> getParticipations() {
-    if (participations == null) {
-      return Collections.emptySet();
-    }
     return participations;
   }
 
   public Set<ParticipationImpl> getAllParticipants() {
-    Set<ParticipationImpl> allRoles = null;
-    if (participations != null) {
+    Set<ParticipationImpl> allRoles = new HashSet<ParticipationImpl>();
+    if (!participations.isEmpty()) {
       allRoles = new HashSet<ParticipationImpl>(participations);
     }
-    else {
-      allRoles = new HashSet<ParticipationImpl>();
-    }
     if (swimlane != null) {
       allRoles.addAll((Set) swimlane.getParticipations());
     }
@@ -172,9 +166,6 @@
 
   private Participation addParticipant(ParticipationImpl participation) {
     participation.setTask(this);
-    if (participations == null) {
-      participations = new HashSet<ParticipationImpl>();
-    }
     participations.add(participation);
     return participation;
   }
@@ -183,7 +174,7 @@
     if (participation == null) {
       throw new JbpmException("participant is null");
     }
-    if ((participations != null) && (participations.remove(participation))) {
+    if (participations.remove(participation)) {
       participation.setTask(null);
     }
   }
@@ -231,16 +222,10 @@
   // comments /////////////////////////////////////////////////////////////////
 
   public List<Comment> getComments() {
-    if (comments == null) {
-      return Collections.emptyList();
-    }
     return (List) comments;
   }
 
   public Comment createComment(String commentText) {
-    if (comments == null) {
-      comments = new ArrayList<CommentImpl>();
-    }
     CommentImpl comment = new CommentImpl(commentText);
     comments.add(comment);
     return comment;
@@ -250,7 +235,7 @@
     if (comment == null) {
       throw new JbpmException("comment is null");
     }
-    if (comments != null) {
+    if (comments.contains(comment)) {
       comments.remove(comment);
     }
   }




More information about the jbpm-commits mailing list