Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorddunne2012-02-13 19:13:37 +0000
committerRyan D. Brooks2012-02-13 19:13:37 +0000
commit12b5df00bd19753df059da5063f11ca12efb9fbd (patch)
tree0f60715f7e3678e970bd14e9aae9943b87fe45ff
parentc93de6911bace9e7d91a959316725daf3ccf7247 (diff)
downloadorg.eclipse.osee-12b5df00bd19753df059da5063f11ca12efb9fbd.tar.gz
org.eclipse.osee-12b5df00bd19753df059da5063f11ca12efb9fbd.tar.xz
org.eclipse.osee-12b5df00bd19753df059da5063f11ca12efb9fbd.zip
feature: Remove use of ATS Log for determination of Implementers for Tasks
-rw-r--r--plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/TaskArtifact.java16
1 files changed, 9 insertions, 7 deletions
diff --git a/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/TaskArtifact.java b/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/TaskArtifact.java
index 8c55905124f..9f83a8d1f06 100644
--- a/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/TaskArtifact.java
+++ b/plugins/org.eclipse.osee.ats.core/src/org/eclipse/osee/ats/core/task/TaskArtifact.java
@@ -10,6 +10,7 @@
*******************************************************************************/
package org.eclipse.osee.ats.core.task;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Date;
@@ -26,7 +27,6 @@ import org.eclipse.osee.ats.core.workflow.PercentCompleteTotalUtil;
import org.eclipse.osee.ats.core.workflow.StateManager;
import org.eclipse.osee.ats.core.workflow.log.AtsLog;
import org.eclipse.osee.ats.core.workflow.log.LogItem;
-import org.eclipse.osee.ats.core.workflow.log.LogType;
import org.eclipse.osee.ats.core.workflow.transition.TransitionHelper;
import org.eclipse.osee.ats.core.workflow.transition.TransitionManager;
import org.eclipse.osee.ats.core.workflow.transition.TransitionOption;
@@ -37,6 +37,7 @@ import org.eclipse.osee.framework.core.exception.OseeStateException;
import org.eclipse.osee.framework.core.model.Branch;
import org.eclipse.osee.framework.core.model.IBasicUser;
import org.eclipse.osee.framework.core.util.Result;
+import org.eclipse.osee.framework.jdk.core.util.Strings;
import org.eclipse.osee.framework.skynet.core.UserManager;
import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
import org.eclipse.osee.framework.skynet.core.artifact.ArtifactFactory;
@@ -175,12 +176,13 @@ public class TaskArtifact extends AbstractWorkflowArtifact implements IATSStateM
@Override
public List<IBasicUser> getImplementers() throws OseeCoreException {
- List<IBasicUser> implementers = StateManager.getImplementersByState(this, TaskStates.InWork);
- LogItem lastEvent = getLog().getLastEvent(LogType.StateComplete);
- if (lastEvent != null && lastEvent.getUser() != null) {
- for (IBasicUser user : getStateMgr().getAssignees(lastEvent.getState())) {
- if (!UserManager.isUnAssignedUser(user) && !implementers.contains(user)) {
- implementers.add(user);
+ List<IBasicUser> implementers = new ArrayList<IBasicUser>();
+ if (isCompleted()) {
+ String completedFromStateStr = getSoleAttributeValue(AtsAttributeTypes.CompletedFromState, "");
+ if (Strings.isValid(completedFromStateStr)) {
+ StateDefinition completedFromState = getWorkDefinition().getStateByName(completedFromStateStr);
+ if (completedFromState != null) {
+ implementers.addAll(StateManager.getAssigneesByState(this, completedFromState));
}
}
}

Back to the top