From cca5f74ba5483f57d0117858e6ab5d3506254da4 Mon Sep 17 00:00:00 2001 From: Roberto E. Escobar Date: Tue, 7 Feb 2012 19:41:34 -0700 Subject: bug[ats_Y1K3Q]: Add createSearch method to WorldEditorParameterSearchItem Change performSearchGetResults to createSearch and return a callable --- .../ats/goal/GoalSearchWorkflowSearchItem.java | 26 +++++--- .../TeamWorkflowSearchWorkflowSearchItem.java | 40 +++++++----- .../ats/navigate/UserSearchWorkflowSearchItem.java | 76 ++++++++++++---------- .../ats/review/ReviewSearchWorkflowSearchItem.java | 41 +++++++----- .../ats/world/IWorldEditorParameterProvider.java | 5 -- .../ats/world/WorldEditorParameterSearchItem.java | 5 ++ .../WorldEditorParameterSearchItemProvider.java | 12 ++-- 7 files changed, 119 insertions(+), 86 deletions(-) diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/goal/GoalSearchWorkflowSearchItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/goal/GoalSearchWorkflowSearchItem.java index 967895ccf4f..8b939d2b7fb 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/goal/GoalSearchWorkflowSearchItem.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/goal/GoalSearchWorkflowSearchItem.java @@ -11,6 +11,7 @@ package org.eclipse.osee.ats.goal; import java.util.Collection; +import java.util.concurrent.Callable; import java.util.logging.Level; import org.eclipse.osee.ats.AtsImage; import org.eclipse.osee.ats.core.config.TeamDefinitionArtifact; @@ -78,12 +79,6 @@ public class GoalSearchWorkflowSearchItem extends WorldEditorParameterSearchItem ""; } - @Override - public Collection performSearchGetResults(SearchType searchType) throws OseeCoreException { - return new GoalSearchItem("", getSelectedTeamDefinitions(), isIncludeCompletedCancelledCheckbox(), - getSelectedUser()).performSearchGetResults(false); - } - @Override public String getSelectedName(SearchType searchType) { StringBuffer sb = new StringBuffer(); @@ -115,7 +110,7 @@ public class GoalSearchWorkflowSearchItem extends WorldEditorParameterSearchItem } } - private User getSelectedUser() { + public User getSelectedUser() { if (assigneeCombo == null) { return null; } @@ -128,7 +123,7 @@ public class GoalSearchWorkflowSearchItem extends WorldEditorParameterSearchItem } } - private boolean isIncludeCompletedCancelledCheckbox() { + public boolean isIncludeCompletedCancelledCheckbox() { if (includeCompletedCancelledCheckbox == null) { return false; } @@ -190,4 +185,19 @@ public class GoalSearchWorkflowSearchItem extends WorldEditorParameterSearchItem return null; } + @Override + public Callable> createSearch() throws OseeCoreException { + final GoalSearchItem searchItem = + new GoalSearchItem("", this.getSelectedTeamDefinitions(), this.isIncludeCompletedCancelledCheckbox(), + this.getSelectedUser()); + searchItem.performSearchGetResults(false); + return new Callable>() { + + @Override + public Collection call() throws Exception { + return searchItem.performSearchGetResults(false); + } + }; + } + } diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/TeamWorkflowSearchWorkflowSearchItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/TeamWorkflowSearchWorkflowSearchItem.java index e232c2f894e..0f1e2470c0e 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/TeamWorkflowSearchWorkflowSearchItem.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/TeamWorkflowSearchWorkflowSearchItem.java @@ -11,6 +11,7 @@ package org.eclipse.osee.ats.navigate; import java.util.Collection; +import java.util.concurrent.Callable; import java.util.logging.Level; import org.eclipse.osee.ats.AtsImage; import org.eclipse.osee.ats.core.config.TeamDefinitionArtifact; @@ -96,20 +97,11 @@ public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSe ""; } - @Override - public Collection performSearchGetResults(SearchType searchType) throws OseeCoreException { - Collection artifacts = - new TeamWorldSearchItem("", getSelectedTeamDefinitions(), isIncludeCompletedCheckbox(), - isIncludeCancelledCheckbox(), false, false, getSelectedVersionArtifact(), getSelectedUser(), - getSelectedReleased(), getSelectedState()).performSearchGetResults(false); - return artifacts; - } - @Override public String getSelectedName(SearchType searchType) throws OseeCoreException { StringBuffer sb = new StringBuffer(); Collection teamDefs = getSelectedTeamDefinitions(); - if (teamDefs.size() > 0) { + if (!teamDefs.isEmpty()) { sb.append(" - Teams: "); sb.append(org.eclipse.osee.framework.jdk.core.util.Collections.toString(",", teamDefs)); } @@ -200,7 +192,7 @@ public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSe } } - protected User getSelectedUser() { + public User getSelectedUser() { if (assigneeCombo == null) { return null; } @@ -213,14 +205,14 @@ public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSe } } - protected String getSelectedState() { + public String getSelectedState() { if (stateCombo == null) { return null; } return stateCombo.getSelectedState(); } - protected boolean isIncludeCancelledCheckbox() { + public boolean isIncludeCancelledCheckbox() { if (includeCancelledCheckbox == null) { return false; } @@ -233,7 +225,7 @@ public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSe } } - protected boolean isIncludeCompletedCheckbox() { + public boolean isIncludeCompletedCheckbox() { if (includeCompletedCheckbox == null) { return false; } @@ -246,7 +238,7 @@ public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSe } } - protected Artifact getSelectedVersionArtifact() throws OseeCoreException { + public Artifact getSelectedVersionArtifact() throws OseeCoreException { if (versionCombo == null) { return null; } @@ -289,7 +281,7 @@ public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSe } } - protected ReleasedOption getSelectedReleased() { + public ReleasedOption getSelectedReleased() { if (releasedCombo == null || !Strings.isValid(releasedCombo.get())) { return ReleasedOption.Both; } @@ -359,4 +351,20 @@ public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSe return getSelectedVersionArtifact(); } + @Override + public Callable> createSearch() throws OseeCoreException { + TeamWorkflowSearchWorkflowSearchItem params = this; + final TeamWorldSearchItem searchItem = + new TeamWorldSearchItem("", params.getSelectedTeamDefinitions(), params.isIncludeCompletedCheckbox(), + params.isIncludeCancelledCheckbox(), false, false, params.getSelectedVersionArtifact(), + params.getSelectedUser(), params.getSelectedReleased(), params.getSelectedState()); + return new Callable>() { + + @Override + public Collection call() throws Exception { + return searchItem.performSearchGetResults(false); + } + }; + } + } diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UserSearchWorkflowSearchItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UserSearchWorkflowSearchItem.java index e041510c68d..47eaf188354 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UserSearchWorkflowSearchItem.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UserSearchWorkflowSearchItem.java @@ -15,6 +15,7 @@ import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Set; +import java.util.concurrent.Callable; import java.util.logging.Level; import org.eclipse.osee.ats.core.config.TeamDefinitionArtifact; import org.eclipse.osee.ats.core.version.VersionLockedType; @@ -116,28 +117,6 @@ public class UserSearchWorkflowSearchItem extends WorldEditorParameterSearchItem ""; } - @Override - public Collection performSearchGetResults(SearchType searchType) throws OseeCoreException { - return new UserWorldSearchItem( - getSelectedUser(), - getSelectedTeamDefinitions(), - (getSelectedVersionArtifact() != null ? Collections.singleton(getSelectedVersionArtifact()) : null), - getSelectedState(), - // - (isAssigneeCheckbox() ? UserSearchOption.Assignee : UserSearchOption.None), - (isFavoritesCheckbox() ? UserSearchOption.Favorites : UserSearchOption.None), - (isOriginatedCheckbox() ? UserSearchOption.Originator : UserSearchOption.None), - (isSubscribedCheckbox() ? UserSearchOption.Subscribed : UserSearchOption.None), - (isReviewsCheckbox() ? UserSearchOption.IncludeReviews : UserSearchOption.None), - (isTeamWorkflowsCheckbox() ? UserSearchOption.IncludeTeamWorkflows : UserSearchOption.None), - (isTasksCheckbox() ? UserSearchOption.IncludeTasks : UserSearchOption.None), - (isIncludeCancelledCheckbox() ? UserSearchOption.IncludeCancelled : UserSearchOption.None), - (isIncludeCompletedCheckbox() ? UserSearchOption.IncludeCompleted : UserSearchOption.None) - - // - ).performSearch(); - } - @Override public String getSelectedName(SearchType searchType) throws OseeCoreException { StringBuffer sb = new StringBuffer(); @@ -264,7 +243,7 @@ public class UserSearchWorkflowSearchItem extends WorldEditorParameterSearchItem } } - private User getSelectedUser() { + public User getSelectedUser() { if (userCombo == null) { return null; } @@ -277,7 +256,7 @@ public class UserSearchWorkflowSearchItem extends WorldEditorParameterSearchItem } } - private String getSelectedState() { + public String getSelectedState() { if (stateCombo == null) { return null; } @@ -317,63 +296,63 @@ public class UserSearchWorkflowSearchItem extends WorldEditorParameterSearchItem } } - private boolean isIncludeCompletedCheckbox() { + public boolean isIncludeCompletedCheckbox() { if (includeCompletedCheckbox == null) { return false; } return includeCompletedCheckbox.isSelected(); } - private boolean isIncludeCancelledCheckbox() { + public boolean isIncludeCancelledCheckbox() { if (includeCancelledCheckbox == null) { return false; } return includeCancelledCheckbox.isSelected(); } - private boolean isAssigneeCheckbox() { + public boolean isAssigneeCheckbox() { if (assigneeCheckbox == null) { return false; } return assigneeCheckbox.isSelected(); } - private boolean isFavoritesCheckbox() { + public boolean isFavoritesCheckbox() { if (favoriteCheckbox == null) { return false; } return favoriteCheckbox.isSelected(); } - private boolean isOriginatedCheckbox() { + public boolean isOriginatedCheckbox() { if (originatorCheckbox == null) { return false; } return originatorCheckbox.isSelected(); } - private boolean isSubscribedCheckbox() { + public boolean isSubscribedCheckbox() { if (subscribedCheckbox == null) { return false; } return subscribedCheckbox.isSelected(); } - private boolean isTeamWorkflowsCheckbox() { + public boolean isTeamWorkflowsCheckbox() { if (teamWorkflowsCheckbox == null) { return false; } return teamWorkflowsCheckbox.isSelected(); } - private boolean isReviewsCheckbox() { + public boolean isReviewsCheckbox() { if (reviewsCheckbox == null) { return false; } return reviewsCheckbox.isSelected(); } - private boolean isTasksCheckbox() { + public boolean isTasksCheckbox() { if (tasksCheckbox == null) { return false; } @@ -392,7 +371,7 @@ public class UserSearchWorkflowSearchItem extends WorldEditorParameterSearchItem } } - private Artifact getSelectedVersionArtifact() throws OseeCoreException { + public Artifact getSelectedVersionArtifact() throws OseeCoreException { if (versionCombo == null) { return null; } @@ -479,4 +458,33 @@ public class UserSearchWorkflowSearchItem extends WorldEditorParameterSearchItem return getSelectedVersionArtifact(); } + @Override + public Callable> createSearch() throws OseeCoreException { + UserSearchWorkflowSearchItem params = this; + Artifact version = params.getSelectedVersionArtifact(); + final UserWorldSearchItem searchItem = + new UserWorldSearchItem( + params.getSelectedUser(), + params.getSelectedTeamDefinitions(), + (version != null ? Collections.singleton(version) : null), + params.getSelectedState(), + // + (params.isAssigneeCheckbox() ? UserSearchOption.Assignee : UserSearchOption.None), + (params.isFavoritesCheckbox() ? UserSearchOption.Favorites : UserSearchOption.None), + (params.isOriginatedCheckbox() ? UserSearchOption.Originator : UserSearchOption.None), + (params.isSubscribedCheckbox() ? UserSearchOption.Subscribed : UserSearchOption.None), + (params.isReviewsCheckbox() ? UserSearchOption.IncludeReviews : UserSearchOption.None), + (params.isTeamWorkflowsCheckbox() ? UserSearchOption.IncludeTeamWorkflows : UserSearchOption.None), + (params.isTasksCheckbox() ? UserSearchOption.IncludeTasks : UserSearchOption.None), + (params.isIncludeCancelledCheckbox() ? UserSearchOption.IncludeCancelled : UserSearchOption.None), + (params.isIncludeCompletedCheckbox() ? UserSearchOption.IncludeCompleted : UserSearchOption.None)); + return new Callable>() { + + @Override + public Collection call() throws Exception { + return searchItem.performSearch(); + } + }; + } + } diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/review/ReviewSearchWorkflowSearchItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/review/ReviewSearchWorkflowSearchItem.java index d482bb20c8e..f9e17989382 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/review/ReviewSearchWorkflowSearchItem.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/review/ReviewSearchWorkflowSearchItem.java @@ -13,6 +13,7 @@ package org.eclipse.osee.ats.review; import java.util.Collection; import java.util.HashSet; import java.util.Set; +import java.util.concurrent.Callable; import java.util.logging.Level; import org.eclipse.osee.ats.AtsImage; import org.eclipse.osee.ats.core.config.ActionableItemArtifact; @@ -100,15 +101,6 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt ""; } - @Override - public Collection performSearchGetResults(SearchType searchType) throws OseeCoreException { - Collection artifacts = - new ReviewWorldSearchItem("", getSelectedAIs(), isIncludeCompletedCheckbox(), isIncludeCancelledCheckbox(), - false, getSelectedVersionArtifact(), getSelectedUser(), getSelectedReviewFormalType(), - getSelectedReviewType(), getSelectedState()).performSearchGetResults(false); - return artifacts; - } - @Override public String getSelectedName(SearchType searchType) throws OseeCoreException { StringBuffer sb = new StringBuffer(); @@ -213,7 +205,7 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt } } - protected ReviewType getSelectedReviewType() { + public ReviewType getSelectedReviewType() { if (reviewTypeCombo == null) { return null; } @@ -224,7 +216,7 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt } } - protected ReviewFormalType getSelectedReviewFormalType() { + public ReviewFormalType getSelectedReviewFormalType() { if (reviewFormalCombo == null) { return null; } @@ -235,7 +227,7 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt } } - protected User getSelectedUser() { + public User getSelectedUser() { if (assigneeCombo == null) { return null; } @@ -248,14 +240,14 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt } } - private String getSelectedState() { + public String getSelectedState() { if (stateCombo == null) { return null; } return stateCombo.getSelectedState(); } - protected boolean isIncludeCancelledCheckbox() { + public boolean isIncludeCancelledCheckbox() { if (includeCancelledCheckbox == null) { return false; } @@ -268,7 +260,7 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt } } - protected boolean isIncludeCompletedCheckbox() { + public boolean isIncludeCompletedCheckbox() { if (includeCompletedCheckbox == null) { return false; } @@ -281,7 +273,7 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt } } - protected Artifact getSelectedVersionArtifact() throws OseeCoreException { + public Artifact getSelectedVersionArtifact() throws OseeCoreException { if (versionCombo == null) { return null; } @@ -389,4 +381,21 @@ public class ReviewSearchWorkflowSearchItem extends WorldEditorParameterSearchIt return getSelectedVersionArtifact(); } + @Override + public Callable> createSearch() throws OseeCoreException { + ReviewSearchWorkflowSearchItem params = this; + final ReviewWorldSearchItem searchItem = + new ReviewWorldSearchItem("", params.getSelectedAIs(), params.isIncludeCompletedCheckbox(), + params.isIncludeCancelledCheckbox(), false, params.getSelectedVersionArtifact(), params.getSelectedUser(), + params.getSelectedReviewFormalType(), params.getSelectedReviewType(), params.getSelectedState()); + + return new Callable>() { + + @Override + public Collection call() throws Exception { + return searchItem.performSearchGetResults(false); + } + }; + } + } diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/IWorldEditorParameterProvider.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/IWorldEditorParameterProvider.java index cf58f4c533a..25071994b95 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/IWorldEditorParameterProvider.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/IWorldEditorParameterProvider.java @@ -10,10 +10,7 @@ *******************************************************************************/ package org.eclipse.osee.ats.world; -import java.util.Collection; -import org.eclipse.osee.ats.world.search.WorldSearchItem.SearchType; import org.eclipse.osee.framework.core.exception.OseeCoreException; -import org.eclipse.osee.framework.skynet.core.artifact.Artifact; import org.eclipse.osee.framework.ui.skynet.widgets.util.DynamicXWidgetLayoutData; import org.eclipse.osee.framework.ui.skynet.widgets.util.IDynamicWidgetLayoutListener; @@ -24,8 +21,6 @@ public interface IWorldEditorParameterProvider extends IWorldEditorProvider { public String getParameterXWidgetXml() throws OseeCoreException; - public Collection performSearchGetResults(SearchType searchType) throws OseeCoreException; - public IDynamicWidgetLayoutListener getDynamicWidgetLayoutListener(); public String[] getWidgetOptions(DynamicXWidgetLayoutData xWidgetData); diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItem.java index 894e69fb437..f454dd79e4a 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItem.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItem.java @@ -10,10 +10,13 @@ *******************************************************************************/ package org.eclipse.osee.ats.world; +import java.util.Collection; +import java.util.concurrent.Callable; import org.eclipse.nebula.widgets.xviewer.customize.CustomizeData; import org.eclipse.osee.ats.world.search.WorldSearchItem; import org.eclipse.osee.framework.core.exception.OseeCoreException; import org.eclipse.osee.framework.core.util.Result; +import org.eclipse.osee.framework.skynet.core.artifact.Artifact; import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption; import org.eclipse.osee.framework.ui.skynet.widgets.util.DynamicXWidgetLayoutData; import org.eclipse.osee.framework.ui.skynet.widgets.util.IDynamicWidgetLayoutListener; @@ -91,4 +94,6 @@ public abstract class WorldEditorParameterSearchItem extends WorldSearchItem imp return false; } + public abstract Callable> createSearch() throws OseeCoreException; + } diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItemProvider.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItemProvider.java index 79f0bdf8d05..65c04a810e4 100644 --- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItemProvider.java +++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/world/WorldEditorParameterSearchItemProvider.java @@ -11,6 +11,7 @@ package org.eclipse.osee.ats.world; import java.util.Collection; +import java.util.concurrent.Callable; import java.util.logging.Level; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IStatus; @@ -135,9 +136,11 @@ public class WorldEditorParameterSearchItemProvider extends WorldEditorProvider worldEditor.setTableTitle("Loading \"" + (selectedName != null ? selectedName : "") + "\"...", false); cancel = false; worldParameterSearchItem.setCancelled(cancel); - final Collection artifacts; worldEditor.getWorldComposite().getXViewer().clear(forcePend); - artifacts = worldParameterSearchItem.performSearchGetResults(searchType); + + Callable> worker = worldParameterSearchItem.createSearch(); + Collection artifacts = worker.call(); + if (artifacts.isEmpty()) { if (worldParameterSearchItem.isCancelled()) { monitor.done(); @@ -177,11 +180,6 @@ public class WorldEditorParameterSearchItemProvider extends WorldEditorProvider return worldParameterSearchItem.getParameterXWidgetXml(); } - @Override - public Collection performSearchGetResults(SearchType searchType) throws OseeCoreException { - return worldParameterSearchItem.performSearchGetResults(searchType); - } - @Override public IDynamicWidgetLayoutListener getDynamicWidgetLayoutListener() { return worldParameterSearchItem; -- cgit v1.2.3