Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrbrooks2010-08-29 08:19:34 +0000
committerrbrooks2010-08-29 08:19:34 +0000
commit59f9aeec1800ce305d6075446f99269385af9c9b (patch)
tree2f1a2b4b28561e7afc90fd9501e056a4edf43cd8 /plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate
parentd8dfd93647951a8fd2dfe74bf6fadb2697f08543 (diff)
parent9279bf9b85bf1ceb07098e922625e00996c085de (diff)
downloadorg.eclipse.osee-3a10f0673e85566766647d2b18ea2307d3c878fc.tar.gz
org.eclipse.osee-3a10f0673e85566766647d2b18ea2307d3c878fc.tar.xz
org.eclipse.osee-3a10f0673e85566766647d2b18ea2307d3c878fc.zip
0.9.5 Branch Creation0.9.5.v201008280938
Diffstat (limited to 'plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate')
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ArtifactImpactToActionSearchItem.java361
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateComposite.java138
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateViewItems.java734
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchData.java88
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchOperation.java218
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsRemoteEventTestItem.java573
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/BarChartExample.java332
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/CreateNewVersionItem.java1
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/DisplayCurrentOseeEventListeners.java3
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/EmailTeamsItem.java1
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/FirstTimeQualityMetricReportItem.java392
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateFullVersionReportItem.java276
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateGuid.java70
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateReviewParticipationReport.java232
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GoalSearchWorkflowSearchItem.java384
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ImportActionsViaSpreadsheet.java3
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java602
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NewPeerToPeerReviewItem.java3
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/PublishFullVersionReportItem.java268
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ReleaseVersionItem.java1
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/TeamWorkflowSearchWorkflowSearchItem.java716
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UpdateAtsWorkItemDefinitions.java3
-rw-r--r--plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/VisitedItems.java3
23 files changed, 2694 insertions, 2708 deletions
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ArtifactImpactToActionSearchItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ArtifactImpactToActionSearchItem.java
index f4a52ea6e4e..b6218a1d721 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ArtifactImpactToActionSearchItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ArtifactImpactToActionSearchItem.java
@@ -1,179 +1,182 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import static org.eclipse.osee.framework.skynet.core.artifact.DeletionFlag.INCLUDE_DELETED;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Set;
-import java.util.logging.Level;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.framework.core.data.SystemUser;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.core.model.Branch;
-import org.eclipse.osee.framework.core.model.TransactionRecord;
-import org.eclipse.osee.framework.jdk.core.type.HashCollection;
-import org.eclipse.osee.framework.jdk.core.util.AHTML;
-import org.eclipse.osee.framework.logging.OseeLog;
-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.BranchManager;
-import org.eclipse.osee.framework.skynet.core.artifact.search.ArtifactQuery;
-import org.eclipse.osee.framework.skynet.core.revision.ChangeManager;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
-import org.eclipse.osee.framework.ui.skynet.results.XResultData;
-import org.eclipse.osee.framework.ui.skynet.widgets.dialog.ArtifactCheckTreeDialog;
-import org.eclipse.osee.framework.ui.skynet.widgets.dialog.EntryDialogWithBranchSelect;
-import org.eclipse.osee.framework.ui.swt.Displays;
-
-/**
- * @author Donald G. Dunne
- */
-public class ArtifactImpactToActionSearchItem extends XNavigateItemAction {
-
- private static String TITLE = "Search Artifact Impact to Action";
-
- /**
- * @param parent
- */
- public ArtifactImpactToActionSearchItem(XNavigateItem parent) {
- super(parent, TITLE, FrameworkImage.FLASHLIGHT);
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) {
- EntryDialogWithBranchSelect ed =
- new EntryDialogWithBranchSelect(getName(), "Enter Artifact Name (or string) to search (no wildcards)");
- if (ed.open() == 0) {
- ActionToArtifactImpactJob job = new ActionToArtifactImpactJob(ed.getEntry(), ed.getBranch());
- job.setUser(true);
- job.setPriority(Job.LONG);
- job.schedule();
- }
- }
-
- public static class ActionToArtifactImpactJob extends Job {
- private IProgressMonitor monitor;
- private final String artifactName;
- private final XResultData rd = new XResultData();
- private final Branch branch;
-
- public ActionToArtifactImpactJob(String artifactName, Branch branch) {
- super("Searching \"" + artifactName + "\"...");
- this.artifactName = artifactName;
- this.branch = branch;
- }
-
- @Override
- public IStatus run(IProgressMonitor monitor) {
- this.monitor = monitor;
- try {
- getMatrixItems();
- rd.report(TITLE + " - \"" + artifactName + "\"");
- return Status.OK_STATUS;
- } catch (Exception ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
- return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.getMessage(), ex);
- }
- }
-
- private void getMatrixItems() throws OseeCoreException {
- final Collection<Artifact> srchArts =
- ArtifactQuery.getArtifactListFromName("%" + artifactName + "%", branch, INCLUDE_DELETED);
- final Set<Artifact> processArts = new HashSet<Artifact>();
- if (srchArts.isEmpty()) {
- return;
- }
- if (srchArts.size() > 1) {
- Displays.pendInDisplayThread(new Runnable() {
- @Override
- public void run() {
- ArtifactCheckTreeDialog dialog = new ArtifactCheckTreeDialog(srchArts);
- dialog.setTitle(TITLE);
- dialog.setMessage("Select Artifacts to Search");
- if (dialog.open() == 0) {
- processArts.addAll(dialog.getSelection());
- }
- }
- });
-
- } else {
- processArts.addAll(srchArts);
- }
- int x = 1;
- rd.log("Artifact Impact to Action for artifact(s) on branch \"" + branch.getShortName() + "\"");
-
- HashCollection<Artifact, TransactionRecord> transactionMap =
- ChangeManager.getModifingTransactions(processArts);
- HashCollection<Artifact, Branch> branchMap = ChangeManager.getModifingBranches(processArts);
- for (Artifact srchArt : processArts) {
- String str = String.format("Processing %d/%d - %s ", x++, processArts.size(), srchArt.getName());
- System.out.println(str);
- rd.log("\n" + AHTML.bold(srchArt.getName()));
- monitor.subTask(str);
- int y = 1;
- rd.addRaw(AHTML.beginMultiColumnTable(95, 1));
- rd.addRaw(AHTML.addHeaderRowMultiColumnTable(new String[] {"Type", "Status", "HRID", "Title"}));
-
- // Check for changes on working branches
- boolean workingBranchesFound = false;
-
- Collection<Branch> branches = branchMap.getValues(srchArt);
- if (branches != null) {
- for (Branch branch : branches) {
- Artifact assocArt = BranchManager.getAssociatedArtifact(branch);
- if (assocArt != null && !assocArt.equals(UserManager.getUser(SystemUser.OseeSystem))) {
- rd.addRaw(AHTML.addRowMultiColumnTable(new String[] {assocArt.getArtifactTypeName(), "Working",
- XResultData.getHyperlink(assocArt), assocArt.getName()}));
- } else {
- rd.addRaw(AHTML.addRowMultiColumnTable(new String[] {"Branch", "", branch.getName()}));
- }
- workingBranchesFound = true;
- }
- }
- if (!workingBranchesFound) {
- rd.addRaw(AHTML.addRowSpanMultiColumnTable("No Impacting Working Branches Found", 3));
- }
- // Add committed changes
- boolean committedChanges = false;
- Collection<TransactionRecord> transactions = transactionMap.getValues(srchArt);
- if (transactions != null) {
- for (TransactionRecord transactionId : transactions) {
- String transStr = String.format("Tranaction %d/%d", y++, transactions.size());
- System.out.println(transStr);
- monitor.subTask(transStr);
- if (transactionId.getCommit() > 0) {
- Artifact assocArt =
- ArtifactQuery.getArtifactFromId(transactionId.getCommit(), BranchManager.getCommonBranch());
- if (assocArt instanceof TeamWorkFlowArtifact) {
- rd.addRaw(AHTML.addRowMultiColumnTable(new String[] {assocArt.getArtifactTypeName(),
- "Committed", assocArt.getHumanReadableId(), assocArt.getName()}));
- committedChanges = true;
- }
- }
- }
- }
- if (!committedChanges) {
- rd.addRaw(AHTML.addRowSpanMultiColumnTable("No Impacting Actions Found", 3));
- }
- rd.addRaw(AHTML.endMultiColumnTable());
- }
- }
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import static org.eclipse.osee.framework.skynet.core.artifact.DeletionFlag.INCLUDE_DELETED;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.logging.Level;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.framework.core.data.SystemUser;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.core.model.Branch;
+import org.eclipse.osee.framework.core.model.TransactionRecord;
+import org.eclipse.osee.framework.jdk.core.type.HashCollection;
+import org.eclipse.osee.framework.jdk.core.util.AHTML;
+import org.eclipse.osee.framework.logging.OseeLog;
+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.BranchManager;
+import org.eclipse.osee.framework.skynet.core.artifact.search.ArtifactQuery;
+import org.eclipse.osee.framework.skynet.core.revision.ChangeManager;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
+import org.eclipse.osee.framework.ui.skynet.results.XResultData;
+import org.eclipse.osee.framework.ui.skynet.widgets.dialog.ArtifactCheckTreeDialog;
+import org.eclipse.osee.framework.ui.skynet.widgets.dialog.EntryDialogWithBranchSelect;
+import org.eclipse.osee.framework.ui.swt.Displays;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class ArtifactImpactToActionSearchItem extends XNavigateItemAction {
+
+ private static String TITLE = "Search Artifact Impact to Action";
+
+ public ArtifactImpactToActionSearchItem(XNavigateItem parent) {
+ super(parent, TITLE, FrameworkImage.FLASHLIGHT);
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) {
+ EntryDialogWithBranchSelect ed =
+ new EntryDialogWithBranchSelect(getName(), "Enter Artifact Name (or string) to search (no wildcards)");
+ if (ed.open() == 0) {
+ ActionToArtifactImpactJob job = new ActionToArtifactImpactJob(ed.getEntry(), ed.getBranch());
+ job.setUser(true);
+ job.setPriority(Job.LONG);
+ job.schedule();
+ }
+ }
+
+ public static class ActionToArtifactImpactJob extends Job {
+ private IProgressMonitor monitor;
+ private final String artifactName;
+ private final XResultData rd = new XResultData();
+ private final Branch branch;
+
+ public ActionToArtifactImpactJob(String artifactName, Branch branch) {
+ super("Searching \"" + artifactName + "\"...");
+ this.artifactName = artifactName;
+ this.branch = branch;
+ }
+
+ @Override
+ public IStatus run(IProgressMonitor monitor) {
+ this.monitor = monitor;
+ try {
+ getMatrixItems();
+ rd.report(TITLE + " - \"" + artifactName + "\"");
+ return Status.OK_STATUS;
+ } catch (Exception ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
+ return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.getMessage(), ex);
+ }
+ }
+
+ private void getMatrixItems() throws OseeCoreException {
+ final Collection<Artifact> srchArts =
+ ArtifactQuery.getArtifactListFromName("%" + artifactName + "%", branch, INCLUDE_DELETED);
+ final Set<Artifact> processArts = new HashSet<Artifact>();
+ if (srchArts.isEmpty()) {
+ return;
+ }
+ if (srchArts.size() > 1) {
+ Displays.pendInDisplayThread(new Runnable() {
+ @Override
+ public void run() {
+ ArtifactCheckTreeDialog dialog = new ArtifactCheckTreeDialog(srchArts);
+ dialog.setTitle(TITLE);
+ dialog.setMessage("Select Artifacts to Search");
+ if (dialog.open() == 0) {
+ processArts.addAll(dialog.getSelection());
+ }
+ }
+ });
+
+ } else {
+ processArts.addAll(srchArts);
+ }
+ int x = 1;
+ rd.log("Artifact Impact to Action for artifact(s) on branch \"" + branch.getShortName() + "\"");
+
+ HashCollection<Artifact, TransactionRecord> transactionMap =
+ ChangeManager.getModifingTransactions(processArts);
+ HashCollection<Artifact, Branch> branchMap = ChangeManager.getModifingBranches(processArts);
+ for (Artifact srchArt : processArts) {
+ String str = String.format("Processing %d/%d - %s ", x++, processArts.size(), srchArt.getName());
+ System.out.println(str);
+ rd.log("\n" + AHTML.bold(srchArt.getName()));
+ monitor.subTask(str);
+ int y = 1;
+ rd.addRaw(AHTML.beginMultiColumnTable(95, 1));
+ rd.addRaw(AHTML.addHeaderRowMultiColumnTable(new String[] {"Type", "Status", "HRID", "Title"}));
+
+ // Check for changes on working branches
+ boolean workingBranchesFound = false;
+
+ Collection<Branch> branches = branchMap.getValues(srchArt);
+ if (branches != null) {
+ for (Branch branch : branches) {
+ Artifact assocArt = BranchManager.getAssociatedArtifact(branch);
+ if (assocArt != null && !assocArt.equals(UserManager.getUser(SystemUser.OseeSystem))) {
+ rd.addRaw(AHTML.addRowMultiColumnTable(new String[] {
+ assocArt.getArtifactTypeName(),
+ "Working",
+ XResultData.getHyperlink(assocArt),
+ assocArt.getName()}));
+ } else {
+ rd.addRaw(AHTML.addRowMultiColumnTable(new String[] {"Branch", "", branch.getName()}));
+ }
+ workingBranchesFound = true;
+ }
+ }
+ if (!workingBranchesFound) {
+ rd.addRaw(AHTML.addRowSpanMultiColumnTable("No Impacting Working Branches Found", 3));
+ }
+ // Add committed changes
+ boolean committedChanges = false;
+ Collection<TransactionRecord> transactions = transactionMap.getValues(srchArt);
+ if (transactions != null) {
+ for (TransactionRecord transactionId : transactions) {
+ String transStr = String.format("Tranaction %d/%d", y++, transactions.size());
+ System.out.println(transStr);
+ monitor.subTask(transStr);
+ if (transactionId.getCommit() > 0) {
+ Artifact assocArt =
+ ArtifactQuery.getArtifactFromId(transactionId.getCommit(), BranchManager.getCommonBranch());
+ if (assocArt instanceof TeamWorkFlowArtifact) {
+ rd.addRaw(AHTML.addRowMultiColumnTable(new String[] {
+ assocArt.getArtifactTypeName(),
+ "Committed",
+ assocArt.getHumanReadableId(),
+ assocArt.getName()}));
+ committedChanges = true;
+ }
+ }
+ }
+ }
+ if (!committedChanges) {
+ rd.addRaw(AHTML.addRowSpanMultiColumnTable("No Impacting Actions Found", 3));
+ }
+ rd.addRaw(AHTML.endMultiColumnTable());
+ }
+ }
+ }
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateComposite.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateComposite.java
index ee6d1e7ba4f..66c00f866a9 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateComposite.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateComposite.java
@@ -1,69 +1,69 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.osee.ats.util.AtsUtil;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.ui.plugin.OseeUiActivator;
-import org.eclipse.osee.framework.ui.plugin.util.Result;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateViewItems;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * @author Donald G. Dunne
- */
-public class AtsNavigateComposite extends XNavigateComposite {
-
- public AtsNavigateComposite(XNavigateViewItems navigateViewItems, Composite parent, int style) {
- super(navigateViewItems, parent, style);
- Result result = OseeUiActivator.areOSEEServicesAvailable();
- if (result.isFalse()) {
- new Label(parent, SWT.NONE).setText(result.getText());
- return;
- }
- }
-
- @Override
- protected void handleDoubleClick() throws OseeCoreException {
- IStructuredSelection sel = (IStructuredSelection) filteredTree.getViewer().getSelection();
- if (!sel.iterator().hasNext()) {
- return;
- }
- XNavigateItem item = (XNavigateItem) sel.iterator().next();
- handleDoubleClick(item);
- }
-
- @Override
- protected void handleDoubleClick(XNavigateItem item, TableLoadOption... tableLoadOptions) throws OseeCoreException {
- super.disposeTooltip();
- if (item.getChildren().size() > 0) {
- filteredTree.getViewer().setExpandedState(item, true);
- }
- AtsXNavigateItemLauncher.handleDoubleClick(item, tableLoadOptions);
- }
-
- @Override
- public void refresh() {
- super.refresh();
- if (AtsUtil.isAtsAdmin()) {
- for (XNavigateItem item : getItems()) {
- if (item.getName().equals("Admin")) {
- filteredTree.getViewer().expandToLevel(item, 1);
- }
- }
- }
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.osee.ats.util.AtsUtil;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.ui.plugin.OseeUiActivator;
+import org.eclipse.osee.framework.ui.plugin.util.Result;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateViewItems;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class AtsNavigateComposite extends XNavigateComposite {
+
+ public AtsNavigateComposite(XNavigateViewItems navigateViewItems, Composite parent, int style) {
+ super(navigateViewItems, parent, style);
+ Result result = OseeUiActivator.areOSEEServicesAvailable();
+ if (result.isFalse()) {
+ new Label(parent, SWT.NONE).setText(result.getText());
+ return;
+ }
+ }
+
+ @Override
+ protected void handleDoubleClick() throws OseeCoreException {
+ IStructuredSelection sel = (IStructuredSelection) filteredTree.getViewer().getSelection();
+ if (!sel.iterator().hasNext()) {
+ return;
+ }
+ XNavigateItem item = (XNavigateItem) sel.iterator().next();
+ handleDoubleClick(item);
+ }
+
+ @Override
+ protected void handleDoubleClick(XNavigateItem item, TableLoadOption... tableLoadOptions) throws OseeCoreException {
+ super.disposeTooltip();
+ if (item.getChildren().size() > 0) {
+ filteredTree.getViewer().setExpandedState(item, true);
+ }
+ AtsXNavigateItemLauncher.handleDoubleClick(item, tableLoadOptions);
+ }
+
+ @Override
+ public void refresh() {
+ super.refresh();
+ if (AtsUtil.isAtsAdmin()) {
+ for (XNavigateItem item : getItems()) {
+ if (item.getName().equals("Admin")) {
+ filteredTree.getViewer().expandToLevel(item, 1);
+ }
+ }
+ }
+ }
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateViewItems.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateViewItems.java
index ffe80fd508e..3da099f744d 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateViewItems.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsNavigateViewItems.java
@@ -1,367 +1,367 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.osee.ats.navigate;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.logging.Level;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.osee.ats.AtsImage;
-import org.eclipse.osee.ats.actions.NewAction;
-import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
-import org.eclipse.osee.ats.health.ValidateAtsDatabase;
-import org.eclipse.osee.ats.health.ValidateChangeReportByHrid;
-import org.eclipse.osee.ats.health.ValidateChangeReports;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.navigate.EmailTeamsItem.MemberType;
-import org.eclipse.osee.ats.notify.AtsNotificationNavigateItem;
-import org.eclipse.osee.ats.util.AtsArtifactTypes;
-import org.eclipse.osee.ats.util.AtsEditor;
-import org.eclipse.osee.ats.util.AtsUtil;
-import org.eclipse.osee.ats.util.DoesNotWorkItemAts;
-import org.eclipse.osee.ats.world.search.ActionableItemWorldSearchItem;
-import org.eclipse.osee.ats.world.search.ArtifactTypeSearchItem;
-import org.eclipse.osee.ats.world.search.ArtifactTypeWithInheritenceSearchItem;
-import org.eclipse.osee.ats.world.search.GoalSearchItem;
-import org.eclipse.osee.ats.world.search.GroupWorldSearchItem;
-import org.eclipse.osee.ats.world.search.MultipleHridSearchData;
-import org.eclipse.osee.ats.world.search.MultipleHridSearchOperation;
-import org.eclipse.osee.ats.world.search.MyFavoritesGoalsSearchItem;
-import org.eclipse.osee.ats.world.search.MyFavoritesSearchItem;
-import org.eclipse.osee.ats.world.search.MyGoalWorkflowItem;
-import org.eclipse.osee.ats.world.search.MyGoalWorkflowItem.GoalSearchState;
-import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem;
-import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem.ReviewState;
-import org.eclipse.osee.ats.world.search.MySubscribedSearchItem;
-import org.eclipse.osee.ats.world.search.MyWorldSearchItem;
-import org.eclipse.osee.ats.world.search.NextVersionSearchItem;
-import org.eclipse.osee.ats.world.search.ShowOpenWorkflowsByArtifactType;
-import org.eclipse.osee.ats.world.search.StateWorldSearchItem;
-import org.eclipse.osee.ats.world.search.TaskSearchWorldSearchItem;
-import org.eclipse.osee.ats.world.search.UserCommunitySearchItem;
-import org.eclipse.osee.ats.world.search.UserRelatedToAtsObjectSearch;
-import org.eclipse.osee.ats.world.search.VersionTargetedForTeamSearchItem;
-import org.eclipse.osee.ats.world.search.WorldSearchItem.LoadView;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.core.model.Branch;
-import org.eclipse.osee.framework.core.operation.IOperation;
-import org.eclipse.osee.framework.logging.OseeLevel;
-import org.eclipse.osee.framework.logging.OseeLog;
-import org.eclipse.osee.framework.skynet.core.User;
-import org.eclipse.osee.framework.skynet.core.UserManager;
-import org.eclipse.osee.framework.ui.plugin.OseeUiActivator;
-import org.eclipse.osee.framework.ui.plugin.PluginUiImage;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.IOperationFactory;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateContributionManager;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateExtensionPointData;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemFolder;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemOperation;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateViewItems;
-import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
-import org.eclipse.osee.framework.ui.skynet.action.CompareTwoStringsAction;
-import org.eclipse.osee.framework.ui.skynet.artifact.MassEditDirtyArtifactOperation;
-import org.eclipse.osee.framework.ui.skynet.blam.BlamContributionManager;
-import org.eclipse.osee.framework.ui.skynet.results.example.ResultsEditorExample;
-import org.eclipse.osee.framework.ui.skynet.results.example.XResultDataExample;
-import org.eclipse.osee.framework.ui.skynet.results.example.XViewerExample;
-import org.eclipse.osee.framework.ui.skynet.util.email.EmailUserGroups;
-import org.eclipse.osee.framework.ui.skynet.widgets.dialog.EntryCheckDialog;
-import org.osgi.framework.Bundle;
-
-/**
- * @author Donald G. Dunne
- */
-public class AtsNavigateViewItems extends XNavigateViewItems {
- private static AtsNavigateViewItems navigateItems = new AtsNavigateViewItems();
- private List<XNavigateItem> items;
-
- public AtsNavigateViewItems() {
- super();
- }
-
- public static AtsNavigateViewItems getInstance() {
- return navigateItems;
- }
-
- @Override
- public List<XNavigateItem> getSearchNavigateItems() {
- if (items == null) {
- items = getItems();
- }
- return items;
- }
-
- private List<XNavigateItem> getItems() {
- List<XNavigateItem> items = new ArrayList<XNavigateItem>();
-
- if (OseeUiActivator.areOSEEServicesAvailable().isFalse()) {
- return items;
- }
-
- try {
- User user = UserManager.getUser();
-
- items.add(new SearchNavigateItem(null, new MyWorldSearchItem("My World", user)));
- items.add(new SearchNavigateItem(null, new MyFavoritesSearchItem("My Favorites", user)));
- items.add(new SearchNavigateItem(null, new MySubscribedSearchItem("My Subscribed", user)));
- items.add(new SearchNavigateItem(null, new MyGoalWorkflowItem("My Goals", user, GoalSearchState.InWork)));
- items.add(new SearchNavigateItem(null, new MyReviewWorkflowItem("My Reviews", user, ReviewState.InWork)));
- items.add(new VisitedItems(null));
- items.add(new XNavigateItemAction(null, new NewAction(), AtsImage.NEW_ACTION));
- items.add(new SearchNavigateItem(null, new MyWorldSearchItem("User's World")));
-
- items.add(new SearchNavigateItem(null, new UserSearchWorkflowSearchItem()));
- items.add(new SearchNavigateItem(null, new TaskSearchWorldSearchItem()));
- items.add(new SearchNavigateItem(null, new GroupWorldSearchItem((Branch) null)));
- items.add(new SearchNavigateItem(null, new TeamWorkflowSearchWorkflowSearchItem()));
- items.add(new SearchNavigateItem(null, new UserCommunitySearchItem()));
- items.add(new SearchNavigateItem(null, new ActionableItemWorldSearchItem(null, "Actionable Item Search",
- false, false, false)));
-
- createGoalsSection(items);
- createVersionsSection(items);
- addExtensionPointItems(items);
- createReviewsSection(items);
-
- XNavigateItem stateItems = new XNavigateItem(null, "States", AtsImage.STATE);
- new SearchNavigateItem(stateItems, new StateWorldSearchItem());
- new SearchNavigateItem(stateItems, new StateWorldSearchItem("Search for Authorize Actions", "Authorize"));
- items.add(stateItems);
-
- // Search Items
- items.add(new XNavigateItemOperation(null, FrameworkImage.BRANCH_CHANGE, "Open Change Report(s) by ID(s)",
- new MultipleHridSearchOperationFactory("Open Change Report(s) by ID(s)", AtsEditor.ChangeReport)));
- items.add(new XNavigateItemOperation(null, AtsImage.OPEN_BY_ID, "Search by ID(s) - Open World Editor",
- new MultipleHridSearchOperationFactory("Search by ID(s) - Open World Editor", AtsEditor.WorldEditor)));
- items.add(new XNavigateItemOperation(null, AtsImage.WORKFLOW_CONFIG, "Search by ID(s) - Open Workflow Editor",
- new MultipleHridSearchOperationFactory("Search by ID(s) - Open Workflow Editor", AtsEditor.WorkflowEditor)));
- items.add(new XNavigateItemOperation(null, AtsImage.GLOBE, "Quick Search", new IOperationFactory() {
-
- @Override
- public IOperation createOperation() {
- EntryCheckDialog dialog =
- new EntryCheckDialog("Search by Strings", "Enter search strings",
- "Include Completed/Cancelled Workflows");
- if (dialog.open() == 0) {
- return new AtsQuickSearchOperation(new AtsQuickSearchData("Search by Strings", dialog.getEntry(),
- dialog.isChecked()));
- }
- return null;
- }
- }));
-
- items.add(new ArtifactImpactToActionSearchItem(null));
-
- XNavigateItem reportItems = new XNavigateItem(null, "Reports", AtsImage.REPORT);
- new FirstTimeQualityMetricReportItem(reportItems);
- new XNavigateItem(reportItems, "ATS World Reports - Input from Actions in ATS World", AtsImage.REPORT);
- new BarChartExample(reportItems);
- new ResultsEditorExample(reportItems);
- new CompareEditorExample(reportItems);
- new XViewerExample(reportItems);
- new XResultDataExample(reportItems);
- // new ExtendedStatusReportItem(atsReportItems, "ATS World Extended Status Report");
-
- XNavigateItem emailItems = new XNavigateItem(null, "Email & Notifications", FrameworkImage.EMAIL);
- new EmailTeamsItem(emailItems, null, MemberType.Both);
- new EmailTeamsItem(emailItems, null, MemberType.Leads);
- new EmailTeamsItem(emailItems, null, MemberType.Members);
- new EmailUserGroups(emailItems);
- new SubscribeByActionableItem(emailItems);
- new SubscribeByTeamDefinition(emailItems);
- items.add(emailItems);
-
- items.add(reportItems);
-
- XNavigateItem utilItems = new XNavigateItem(null, "Util", FrameworkImage.GEAR);
- new ImportActionsViaSpreadsheet(utilItems);
- new XNavigateItemAction(utilItems, new CompareTwoStringsAction(), FrameworkImage.EDIT);
- new GenerateGuid(utilItems);
- new XNavigateItemOperation(utilItems, FrameworkImage.GEAR, MassEditDirtyArtifactOperation.NAME,
- new MassEditDirtyArtifactOperation());
-
- items.add(utilItems);
-
- BlamContributionManager.addBlamOperationsToNavigator(items);
-
- if (AtsUtil.isAtsAdmin()) {
- XNavigateItem adminItems = new XNavigateItem(null, "Admin", PluginUiImage.ADMIN);
-
- new AtsNotificationNavigateItem(adminItems);
- new AtsNotificationNavigateItem(adminItems, true);
- new UpdateAtsWorkItemDefinitions(adminItems);
- new DisplayCurrentOseeEventListeners(adminItems);
- new AtsRemoteEventTestItem(adminItems);
-
- new SearchNavigateItem(adminItems, new UserRelatedToAtsObjectSearch(
- "User's All Related Objects - Admin Only", null, false, LoadView.WorldEditor));
- new SearchNavigateItem(adminItems, new UserRelatedToAtsObjectSearch(
- "User's All Active Related Objects - Admin Only", null, true, LoadView.WorldEditor));
-
- new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all Actions", AtsArtifactTypes.Action));
- new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all Decision Review",
- AtsArtifactTypes.DecisionReview));
- new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all PeerToPeer Review",
- AtsArtifactTypes.PeerToPeerReview));
- new SearchNavigateItem(adminItems, new ArtifactTypeWithInheritenceSearchItem("Show all Team Workflows",
- AtsArtifactTypes.TeamWorkflow));
- new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all Tasks", AtsArtifactTypes.Task));
- new CreateGoalTestArtifacts(adminItems);
-
- new DoesNotWorkItemAts(adminItems);
-
- XNavigateItem healthItems = new XNavigateItemFolder(adminItems, "Health");
- new ValidateAtsDatabase(healthItems);
- new ValidateChangeReports(healthItems);
- new ValidateChangeReportByHrid(healthItems);
-
- // new ActionNavigateItem(adminItems, new XViewerViewAction());
- // new ActionNavigateItem(adminItems, new OpenEditorAction());
- // new CreateBugFixesItem(adminItems);
-
- XNavigateItem extra = new XNavigateItemFolder(adminItems, "Other");
- Set<XNavigateExtensionPointData> extraItems =
- XNavigateContributionManager.getNavigateItems(NavigateView.VIEW_ID);
- for (XNavigateExtensionPointData extraItem : extraItems) {
- for (XNavigateItem navigateItem : extraItem.getNavigateItems()) {
- extra.addChild(navigateItem);
- }
- }
-
- items.add(adminItems);
- }
- } catch (OseeCoreException ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
- return items;
- }
-
- return items;
- }
-
- public void createReviewsSection(List<XNavigateItem> items) {
- try {
- XNavigateItem reviewItem = new XNavigateItem(null, "Reviews", AtsImage.REVIEW);
- new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
- "Show Open " + AtsArtifactTypes.DecisionReview.getName() + "s", AtsArtifactTypes.DecisionReview, false,
- false, AtsImage.REVIEW));
- new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
- "Show Workflows Waiting " + AtsArtifactTypes.DecisionReview.getName() + "s",
- AtsArtifactTypes.DecisionReview, false, true, AtsImage.REVIEW));
- new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
- "Show Open " + AtsArtifactTypes.PeerToPeerReview.getName() + "s", AtsArtifactTypes.PeerToPeerReview, false,
- false, AtsImage.REVIEW));
- new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
- "Show Workflows Waiting " + AtsArtifactTypes.PeerToPeerReview.getName() + "s",
- AtsArtifactTypes.PeerToPeerReview, false, true, AtsImage.REVIEW));
- new NewPeerToPeerReviewItem(reviewItem);
- new GenerateReviewParticipationReport(reviewItem);
- items.add(reviewItem);
- } catch (OseeCoreException ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, "Can't create Goals section");
- }
- }
-
- public void createVersionsSection(List<XNavigateItem> items) {
- try {
- XNavigateItem releaseItems = new XNavigateItem(null, "Versions", FrameworkImage.VERSION);
- new MassEditTeamVersionItem("Team Versions", releaseItems, (TeamDefinitionArtifact) null,
- FrameworkImage.VERSION);
- new SearchNavigateItem(releaseItems, new VersionTargetedForTeamSearchItem(null, null, false,
- LoadView.WorldEditor));
- new SearchNavigateItem(releaseItems, new NextVersionSearchItem(null, LoadView.WorldEditor));
- new ReleaseVersionItem(releaseItems, null);
- new CreateNewVersionItem(releaseItems, null);
- new GenerateVersionReportItem(releaseItems);
- new GenerateFullVersionReportItem(releaseItems);
- items.add(releaseItems);
- } catch (OseeCoreException ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, "Can't create Goals section");
- }
- }
-
- public void createGoalsSection(List<XNavigateItem> items) {
- try {
- XNavigateItem goalItem = new XNavigateItem(null, "Goals", AtsImage.GOAL);
- new SearchNavigateItem(goalItem, new GoalSearchItem("InWork Goals", new ArrayList<TeamDefinitionArtifact>(),
- false, null));
- new SearchNavigateItem(goalItem, new GoalSearchWorkflowSearchItem());
- new SearchNavigateItem(goalItem, new MyFavoritesGoalsSearchItem("Favorites", UserManager.getUser()));
- items.add(goalItem);
- } catch (OseeCoreException ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, "Can't create Goals section");
- }
- }
-
- public void addExtensionPointItems(List<XNavigateItem> items) {
- IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint("org.eclipse.osee.ats.AtsNavigateItem");
- if (point == null) {
- OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, "Can't access AtsNavigateItem extension point");
- return;
- }
- IExtension[] extensions = point.getExtensions();
- Map<String, XNavigateItem> nameToNavItem = new HashMap<String, XNavigateItem>();
- for (IExtension extension : extensions) {
- IConfigurationElement[] elements = extension.getConfigurationElements();
- String classname = null;
- String bundleName = null;
- for (IConfigurationElement el : elements) {
- if (el.getName().equals("AtsNavigateItem")) {
- classname = el.getAttribute("classname");
- bundleName = el.getContributor().getName();
- }
- }
- if (classname != null && bundleName != null) {
- Bundle bundle = Platform.getBundle(bundleName);
- try {
- Object obj = bundle.loadClass(classname).newInstance();
- IAtsNavigateItem task = (IAtsNavigateItem) obj;
- for (XNavigateItem navItem : task.getNavigateItems()) {
- nameToNavItem.put(navItem.getName(), navItem);
- }
- } catch (Exception ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, "Error loading AtsNavigateItem extension", ex);
- }
- }
- }
- // Put in alpha order
- String[] names = nameToNavItem.keySet().toArray(new String[nameToNavItem.size()]);
- Arrays.sort(names);
- for (String name : names) {
- items.add(nameToNavItem.get(name));
- }
- }
-
- private static final class MultipleHridSearchOperationFactory implements IOperationFactory {
-
- private final AtsEditor atsEditor;
- private final String operationName;
-
- public MultipleHridSearchOperationFactory(String operationName, AtsEditor atsEditor) {
- this.operationName = operationName;
- this.atsEditor = atsEditor;
- }
-
- @Override
- public IOperation createOperation() {
- return new MultipleHridSearchOperation(new MultipleHridSearchData(operationName, atsEditor));
- }
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.osee.ats.navigate;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.logging.Level;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.osee.ats.AtsImage;
+import org.eclipse.osee.ats.actions.NewAction;
+import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
+import org.eclipse.osee.ats.health.ValidateAtsDatabase;
+import org.eclipse.osee.ats.health.ValidateChangeReportByHrid;
+import org.eclipse.osee.ats.health.ValidateChangeReports;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.navigate.EmailTeamsItem.MemberType;
+import org.eclipse.osee.ats.notify.AtsNotificationNavigateItem;
+import org.eclipse.osee.ats.util.AtsArtifactTypes;
+import org.eclipse.osee.ats.util.AtsEditor;
+import org.eclipse.osee.ats.util.AtsUtil;
+import org.eclipse.osee.ats.util.DoesNotWorkItemAts;
+import org.eclipse.osee.ats.world.search.ActionableItemWorldSearchItem;
+import org.eclipse.osee.ats.world.search.ArtifactTypeSearchItem;
+import org.eclipse.osee.ats.world.search.ArtifactTypeWithInheritenceSearchItem;
+import org.eclipse.osee.ats.world.search.GoalSearchItem;
+import org.eclipse.osee.ats.world.search.GroupWorldSearchItem;
+import org.eclipse.osee.ats.world.search.MultipleHridSearchData;
+import org.eclipse.osee.ats.world.search.MultipleHridSearchOperation;
+import org.eclipse.osee.ats.world.search.MyFavoritesGoalsSearchItem;
+import org.eclipse.osee.ats.world.search.MyFavoritesSearchItem;
+import org.eclipse.osee.ats.world.search.MyGoalWorkflowItem;
+import org.eclipse.osee.ats.world.search.MyGoalWorkflowItem.GoalSearchState;
+import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem;
+import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem.ReviewState;
+import org.eclipse.osee.ats.world.search.MySubscribedSearchItem;
+import org.eclipse.osee.ats.world.search.MyWorldSearchItem;
+import org.eclipse.osee.ats.world.search.NextVersionSearchItem;
+import org.eclipse.osee.ats.world.search.ShowOpenWorkflowsByArtifactType;
+import org.eclipse.osee.ats.world.search.StateWorldSearchItem;
+import org.eclipse.osee.ats.world.search.TaskSearchWorldSearchItem;
+import org.eclipse.osee.ats.world.search.UserCommunitySearchItem;
+import org.eclipse.osee.ats.world.search.UserRelatedToAtsObjectSearch;
+import org.eclipse.osee.ats.world.search.VersionTargetedForTeamSearchItem;
+import org.eclipse.osee.ats.world.search.WorldSearchItem.LoadView;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.core.model.Branch;
+import org.eclipse.osee.framework.core.operation.IOperation;
+import org.eclipse.osee.framework.logging.OseeLevel;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.User;
+import org.eclipse.osee.framework.skynet.core.UserManager;
+import org.eclipse.osee.framework.ui.plugin.OseeUiActivator;
+import org.eclipse.osee.framework.ui.plugin.PluginUiImage;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.IOperationFactory;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateContributionManager;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateExtensionPointData;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemFolder;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemOperation;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateViewItems;
+import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
+import org.eclipse.osee.framework.ui.skynet.action.CompareTwoStringsAction;
+import org.eclipse.osee.framework.ui.skynet.artifact.MassEditDirtyArtifactOperation;
+import org.eclipse.osee.framework.ui.skynet.blam.BlamContributionManager;
+import org.eclipse.osee.framework.ui.skynet.results.example.ResultsEditorExample;
+import org.eclipse.osee.framework.ui.skynet.results.example.XResultDataExample;
+import org.eclipse.osee.framework.ui.skynet.results.example.XViewerExample;
+import org.eclipse.osee.framework.ui.skynet.util.email.EmailUserGroups;
+import org.eclipse.osee.framework.ui.skynet.widgets.dialog.EntryCheckDialog;
+import org.osgi.framework.Bundle;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class AtsNavigateViewItems extends XNavigateViewItems {
+ private static AtsNavigateViewItems navigateItems = new AtsNavigateViewItems();
+ private List<XNavigateItem> items;
+
+ public AtsNavigateViewItems() {
+ super();
+ }
+
+ public static AtsNavigateViewItems getInstance() {
+ return navigateItems;
+ }
+
+ @Override
+ public List<XNavigateItem> getSearchNavigateItems() {
+ if (items == null) {
+ items = getItems();
+ }
+ return items;
+ }
+
+ private List<XNavigateItem> getItems() {
+ List<XNavigateItem> items = new ArrayList<XNavigateItem>();
+
+ if (OseeUiActivator.areOSEEServicesAvailable().isFalse()) {
+ return items;
+ }
+
+ try {
+ User user = UserManager.getUser();
+
+ items.add(new SearchNavigateItem(null, new MyWorldSearchItem("My World", user)));
+ items.add(new SearchNavigateItem(null, new MyFavoritesSearchItem("My Favorites", user)));
+ items.add(new SearchNavigateItem(null, new MySubscribedSearchItem("My Subscribed", user)));
+ items.add(new SearchNavigateItem(null, new MyGoalWorkflowItem("My Goals", user, GoalSearchState.InWork)));
+ items.add(new SearchNavigateItem(null, new MyReviewWorkflowItem("My Reviews", user, ReviewState.InWork)));
+ items.add(new VisitedItems(null));
+ items.add(new XNavigateItemAction(null, new NewAction(), AtsImage.NEW_ACTION));
+ items.add(new SearchNavigateItem(null, new MyWorldSearchItem("User's World")));
+
+ items.add(new SearchNavigateItem(null, new UserSearchWorkflowSearchItem()));
+ items.add(new SearchNavigateItem(null, new TaskSearchWorldSearchItem()));
+ items.add(new SearchNavigateItem(null, new GroupWorldSearchItem((Branch) null)));
+ items.add(new SearchNavigateItem(null, new TeamWorkflowSearchWorkflowSearchItem()));
+ items.add(new SearchNavigateItem(null, new UserCommunitySearchItem()));
+ items.add(new SearchNavigateItem(null, new ActionableItemWorldSearchItem(null, "Actionable Item Search",
+ false, false, false)));
+
+ createGoalsSection(items);
+ createVersionsSection(items);
+ addExtensionPointItems(items);
+ createReviewsSection(items);
+
+ XNavigateItem stateItems = new XNavigateItem(null, "States", AtsImage.STATE);
+ new SearchNavigateItem(stateItems, new StateWorldSearchItem());
+ new SearchNavigateItem(stateItems, new StateWorldSearchItem("Search for Authorize Actions", "Authorize"));
+ items.add(stateItems);
+
+ // Search Items
+ items.add(new XNavigateItemOperation(null, FrameworkImage.BRANCH_CHANGE, "Open Change Report(s) by ID(s)",
+ new MultipleHridSearchOperationFactory("Open Change Report(s) by ID(s)", AtsEditor.ChangeReport)));
+ items.add(new XNavigateItemOperation(null, AtsImage.OPEN_BY_ID, "Search by ID(s) - Open World Editor",
+ new MultipleHridSearchOperationFactory("Search by ID(s) - Open World Editor", AtsEditor.WorldEditor)));
+ items.add(new XNavigateItemOperation(null, AtsImage.WORKFLOW_CONFIG, "Search by ID(s) - Open Workflow Editor",
+ new MultipleHridSearchOperationFactory("Search by ID(s) - Open Workflow Editor", AtsEditor.WorkflowEditor)));
+ items.add(new XNavigateItemOperation(null, AtsImage.GLOBE, "Quick Search", new IOperationFactory() {
+
+ @Override
+ public IOperation createOperation() {
+ EntryCheckDialog dialog =
+ new EntryCheckDialog("Search by Strings", "Enter search strings",
+ "Include Completed/Cancelled Workflows");
+ if (dialog.open() == 0) {
+ return new AtsQuickSearchOperation(new AtsQuickSearchData("Search by Strings", dialog.getEntry(),
+ dialog.isChecked()));
+ }
+ return null;
+ }
+ }));
+
+ items.add(new ArtifactImpactToActionSearchItem(null));
+
+ XNavigateItem reportItems = new XNavigateItem(null, "Reports", AtsImage.REPORT);
+ new FirstTimeQualityMetricReportItem(reportItems);
+ new XNavigateItem(reportItems, "ATS World Reports - Input from Actions in ATS World", AtsImage.REPORT);
+ new BarChartExample(reportItems);
+ new ResultsEditorExample(reportItems);
+ new CompareEditorExample(reportItems);
+ new XViewerExample(reportItems);
+ new XResultDataExample(reportItems);
+ // new ExtendedStatusReportItem(atsReportItems, "ATS World Extended Status Report");
+
+ XNavigateItem emailItems = new XNavigateItem(null, "Email & Notifications", FrameworkImage.EMAIL);
+ new EmailTeamsItem(emailItems, null, MemberType.Both);
+ new EmailTeamsItem(emailItems, null, MemberType.Leads);
+ new EmailTeamsItem(emailItems, null, MemberType.Members);
+ new EmailUserGroups(emailItems);
+ new SubscribeByActionableItem(emailItems);
+ new SubscribeByTeamDefinition(emailItems);
+ items.add(emailItems);
+
+ items.add(reportItems);
+
+ XNavigateItem utilItems = new XNavigateItem(null, "Util", FrameworkImage.GEAR);
+ new ImportActionsViaSpreadsheet(utilItems);
+ new XNavigateItemAction(utilItems, new CompareTwoStringsAction(), FrameworkImage.EDIT);
+ new GenerateGuid(utilItems);
+ new XNavigateItemOperation(utilItems, FrameworkImage.GEAR, MassEditDirtyArtifactOperation.NAME,
+ new MassEditDirtyArtifactOperation());
+
+ items.add(utilItems);
+
+ BlamContributionManager.addBlamOperationsToNavigator(items);
+
+ if (AtsUtil.isAtsAdmin()) {
+ XNavigateItem adminItems = new XNavigateItem(null, "Admin", PluginUiImage.ADMIN);
+
+ new AtsNotificationNavigateItem(adminItems);
+ new AtsNotificationNavigateItem(adminItems, true);
+ new UpdateAtsWorkItemDefinitions(adminItems);
+ new DisplayCurrentOseeEventListeners(adminItems);
+ new AtsRemoteEventTestItem(adminItems);
+
+ new SearchNavigateItem(adminItems, new UserRelatedToAtsObjectSearch(
+ "User's All Related Objects - Admin Only", null, false, LoadView.WorldEditor));
+ new SearchNavigateItem(adminItems, new UserRelatedToAtsObjectSearch(
+ "User's All Active Related Objects - Admin Only", null, true, LoadView.WorldEditor));
+
+ new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all Actions", AtsArtifactTypes.Action));
+ new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all Decision Review",
+ AtsArtifactTypes.DecisionReview));
+ new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all PeerToPeer Review",
+ AtsArtifactTypes.PeerToPeerReview));
+ new SearchNavigateItem(adminItems, new ArtifactTypeWithInheritenceSearchItem("Show all Team Workflows",
+ AtsArtifactTypes.TeamWorkflow));
+ new SearchNavigateItem(adminItems, new ArtifactTypeSearchItem("Show all Tasks", AtsArtifactTypes.Task));
+ new CreateGoalTestArtifacts(adminItems);
+
+ new DoesNotWorkItemAts(adminItems);
+
+ XNavigateItem healthItems = new XNavigateItemFolder(adminItems, "Health");
+ new ValidateAtsDatabase(healthItems);
+ new ValidateChangeReports(healthItems);
+ new ValidateChangeReportByHrid(healthItems);
+
+ // new ActionNavigateItem(adminItems, new XViewerViewAction());
+ // new ActionNavigateItem(adminItems, new OpenEditorAction());
+ // new CreateBugFixesItem(adminItems);
+
+ XNavigateItem extra = new XNavigateItemFolder(adminItems, "Other");
+ Set<XNavigateExtensionPointData> extraItems =
+ XNavigateContributionManager.getNavigateItems(NavigateView.VIEW_ID);
+ for (XNavigateExtensionPointData extraItem : extraItems) {
+ for (XNavigateItem navigateItem : extraItem.getNavigateItems()) {
+ extra.addChild(navigateItem);
+ }
+ }
+
+ items.add(adminItems);
+ }
+ } catch (OseeCoreException ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
+ return items;
+ }
+
+ return items;
+ }
+
+ public void createReviewsSection(List<XNavigateItem> items) {
+ try {
+ XNavigateItem reviewItem = new XNavigateItem(null, "Reviews", AtsImage.REVIEW);
+ new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
+ "Show Open " + AtsArtifactTypes.DecisionReview.getName() + "s", AtsArtifactTypes.DecisionReview, false,
+ false, AtsImage.REVIEW));
+ new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
+ "Show Workflows Waiting " + AtsArtifactTypes.DecisionReview.getName() + "s",
+ AtsArtifactTypes.DecisionReview, false, true, AtsImage.REVIEW));
+ new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
+ "Show Open " + AtsArtifactTypes.PeerToPeerReview.getName() + "s", AtsArtifactTypes.PeerToPeerReview, false,
+ false, AtsImage.REVIEW));
+ new SearchNavigateItem(reviewItem, new ShowOpenWorkflowsByArtifactType(
+ "Show Workflows Waiting " + AtsArtifactTypes.PeerToPeerReview.getName() + "s",
+ AtsArtifactTypes.PeerToPeerReview, false, true, AtsImage.REVIEW));
+ new NewPeerToPeerReviewItem(reviewItem);
+ new GenerateReviewParticipationReport(reviewItem);
+ items.add(reviewItem);
+ } catch (OseeCoreException ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, "Can't create Goals section");
+ }
+ }
+
+ public void createVersionsSection(List<XNavigateItem> items) {
+ try {
+ XNavigateItem releaseItems = new XNavigateItem(null, "Versions", FrameworkImage.VERSION);
+ new MassEditTeamVersionItem("Team Versions", releaseItems, (TeamDefinitionArtifact) null,
+ FrameworkImage.VERSION);
+ new SearchNavigateItem(releaseItems, new VersionTargetedForTeamSearchItem(null, null, false,
+ LoadView.WorldEditor));
+ new SearchNavigateItem(releaseItems, new NextVersionSearchItem(null, LoadView.WorldEditor));
+ new ReleaseVersionItem(releaseItems, null);
+ new CreateNewVersionItem(releaseItems, null);
+ new GenerateVersionReportItem(releaseItems);
+ new GenerateFullVersionReportItem(releaseItems);
+ items.add(releaseItems);
+ } catch (OseeCoreException ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, "Can't create Goals section");
+ }
+ }
+
+ public void createGoalsSection(List<XNavigateItem> items) {
+ try {
+ XNavigateItem goalItem = new XNavigateItem(null, "Goals", AtsImage.GOAL);
+ new SearchNavigateItem(goalItem, new GoalSearchItem("InWork Goals", new ArrayList<TeamDefinitionArtifact>(),
+ false, null));
+ new SearchNavigateItem(goalItem, new GoalSearchWorkflowSearchItem());
+ new SearchNavigateItem(goalItem, new MyFavoritesGoalsSearchItem("Favorites", UserManager.getUser()));
+ items.add(goalItem);
+ } catch (OseeCoreException ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, "Can't create Goals section");
+ }
+ }
+
+ public void addExtensionPointItems(List<XNavigateItem> items) {
+ IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint("org.eclipse.osee.ats.AtsNavigateItem");
+ if (point == null) {
+ OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, "Can't access AtsNavigateItem extension point");
+ return;
+ }
+ IExtension[] extensions = point.getExtensions();
+ Map<String, XNavigateItem> nameToNavItem = new HashMap<String, XNavigateItem>();
+ for (IExtension extension : extensions) {
+ IConfigurationElement[] elements = extension.getConfigurationElements();
+ String classname = null;
+ String bundleName = null;
+ for (IConfigurationElement el : elements) {
+ if (el.getName().equals("AtsNavigateItem")) {
+ classname = el.getAttribute("classname");
+ bundleName = el.getContributor().getName();
+ }
+ }
+ if (classname != null && bundleName != null) {
+ Bundle bundle = Platform.getBundle(bundleName);
+ try {
+ Object obj = bundle.loadClass(classname).newInstance();
+ IAtsNavigateItem task = (IAtsNavigateItem) obj;
+ for (XNavigateItem navItem : task.getNavigateItems()) {
+ nameToNavItem.put(navItem.getName(), navItem);
+ }
+ } catch (Exception ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, "Error loading AtsNavigateItem extension", ex);
+ }
+ }
+ }
+ // Put in alpha order
+ String[] names = nameToNavItem.keySet().toArray(new String[nameToNavItem.size()]);
+ Arrays.sort(names);
+ for (String name : names) {
+ items.add(nameToNavItem.get(name));
+ }
+ }
+
+ private static final class MultipleHridSearchOperationFactory implements IOperationFactory {
+
+ private final AtsEditor atsEditor;
+ private final String operationName;
+
+ public MultipleHridSearchOperationFactory(String operationName, AtsEditor atsEditor) {
+ this.operationName = operationName;
+ this.atsEditor = atsEditor;
+ }
+
+ @Override
+ public IOperation createOperation() {
+ return new MultipleHridSearchOperation(new MultipleHridSearchData(operationName, atsEditor));
+ }
+ }
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchData.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchData.java
index 1e26d01f0f0..15d275ef5ec 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchData.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchData.java
@@ -1,44 +1,44 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-/**
- * @author Donald G. Dunne
- */
-public class AtsQuickSearchData {
- private final String searchStr;
- private boolean includeCompleteCancelled = false;
- private final String name;
-
- public AtsQuickSearchData(String name, String searchStr, boolean includeCompleteCancelled) {
- this.name = name;
- this.searchStr = searchStr;
- this.includeCompleteCancelled = includeCompleteCancelled;
- }
-
- public boolean isIncludeCompleteCancelled() {
- return includeCompleteCancelled;
- }
-
- public void setIncludeCompleteCancelled(boolean includeCompleteCancelled) {
- this.includeCompleteCancelled = includeCompleteCancelled;
- }
-
- public String getSearchStr() {
- return searchStr;
- }
-
- @Override
- public String toString() {
- return String.format("%s - [%s]%s", name, searchStr,
- includeCompleteCancelled ? " - Include Completed/Cancelled" : "");
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class AtsQuickSearchData {
+ private final String searchStr;
+ private boolean includeCompleteCancelled = false;
+ private final String name;
+
+ public AtsQuickSearchData(String name, String searchStr, boolean includeCompleteCancelled) {
+ this.name = name;
+ this.searchStr = searchStr;
+ this.includeCompleteCancelled = includeCompleteCancelled;
+ }
+
+ public boolean isIncludeCompleteCancelled() {
+ return includeCompleteCancelled;
+ }
+
+ public void setIncludeCompleteCancelled(boolean includeCompleteCancelled) {
+ this.includeCompleteCancelled = includeCompleteCancelled;
+ }
+
+ public String getSearchStr() {
+ return searchStr;
+ }
+
+ @Override
+ public String toString() {
+ return String.format("%s - [%s]%s", name, searchStr,
+ includeCompleteCancelled ? " - Include Completed/Cancelled" : "");
+ }
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchOperation.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchOperation.java
index 37962035aee..378d6ac7a9d 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchOperation.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsQuickSearchOperation.java
@@ -1,109 +1,109 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import static org.eclipse.osee.framework.skynet.core.artifact.DeletionFlag.EXCLUDE_DELETED;
-import java.util.HashSet;
-import java.util.Set;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.osee.ats.artifact.StateMachineArtifact;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.AtsUtil;
-import org.eclipse.osee.ats.world.IWorldEditorConsumer;
-import org.eclipse.osee.ats.world.WorldEditor;
-import org.eclipse.osee.ats.world.WorldEditorOperationProvider;
-import org.eclipse.osee.framework.core.exception.ArtifactDoesNotExist;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.core.operation.AbstractOperation;
-import org.eclipse.osee.framework.jdk.core.util.HumanReadableId;
-import org.eclipse.osee.framework.jdk.core.util.Strings;
-import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
-import org.eclipse.osee.framework.skynet.core.artifact.search.ArtifactQuery;
-import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-
-/**
- * @author Donald G. Dunne
- */
-public class AtsQuickSearchOperation extends AbstractOperation implements IWorldEditorConsumer {
- Set<Artifact> allArtifacts = new HashSet<Artifact>();
- private final AtsQuickSearchData data;
- private WorldEditor worldEditor;
-
- public AtsQuickSearchOperation(AtsQuickSearchData data) {
- super(data.toString(), AtsPlugin.PLUGIN_ID);
- this.data = data;
- }
-
- @Override
- protected void doWork(IProgressMonitor monitor) throws OseeCoreException {
- if (!Strings.isValid(data.getSearchStr())) {
- AWorkbench.popup("Must Enter Search String");
- return;
- }
- if (worldEditor == null) {
- WorldEditor.open(new WorldEditorOperationProvider(new AtsQuickSearchOperation(data)));
- return;
- }
- for (String str : data.getSearchStr().split(", ")) {
- if (HumanReadableId.isValid(str)) {
- try {
- Artifact art = ArtifactQuery.getArtifactFromId(str, AtsUtil.getAtsBranch());
- if (art != null) {
- allArtifacts.add(art);
- }
- } catch (ArtifactDoesNotExist ex) {
- // do nothing
- }
- }
- }
- for (Artifact art : ArtifactQuery.getArtifactListFromAttributeKeywords(AtsUtil.getAtsBranch(),
- data.getSearchStr(), false, EXCLUDE_DELETED, false)) {
- // only ATS Artifacts
- if (art instanceof StateMachineArtifact) {
- StateMachineArtifact sma = (StateMachineArtifact) art;
- // default excludes canceled/completed
- if (data.isIncludeCompleteCancelled() == false) {
- if (!sma.isCancelledOrCompleted()) {
- allArtifacts.add(art);
- }
- } else {
- allArtifacts.add(art);
- }
- }
- }
- if (allArtifacts.isEmpty()) {
- AWorkbench.popup(getName(), getName() + "\n\nNo Results Found");
- } else if (worldEditor != null) {
- worldEditor.getWorldComposite().load(getName(), allArtifacts, TableLoadOption.None);
- }
- }
-
- @Override
- public String getName() {
- return data.toString();
- }
-
- public Set<Artifact> getAllArtifacts() {
- return allArtifacts;
- }
-
- @Override
- public WorldEditor getWorldEditor() {
- return worldEditor;
- }
-
- @Override
- public void setWorldEditor(WorldEditor worldEditor) {
- this.worldEditor = worldEditor;
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import static org.eclipse.osee.framework.skynet.core.artifact.DeletionFlag.EXCLUDE_DELETED;
+import java.util.HashSet;
+import java.util.Set;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.osee.ats.artifact.StateMachineArtifact;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.AtsUtil;
+import org.eclipse.osee.ats.world.IWorldEditorConsumer;
+import org.eclipse.osee.ats.world.WorldEditor;
+import org.eclipse.osee.ats.world.WorldEditorOperationProvider;
+import org.eclipse.osee.framework.core.exception.ArtifactDoesNotExist;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.core.operation.AbstractOperation;
+import org.eclipse.osee.framework.jdk.core.util.HumanReadableId;
+import org.eclipse.osee.framework.jdk.core.util.Strings;
+import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
+import org.eclipse.osee.framework.skynet.core.artifact.search.ArtifactQuery;
+import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class AtsQuickSearchOperation extends AbstractOperation implements IWorldEditorConsumer {
+ Set<Artifact> allArtifacts = new HashSet<Artifact>();
+ private final AtsQuickSearchData data;
+ private WorldEditor worldEditor;
+
+ public AtsQuickSearchOperation(AtsQuickSearchData data) {
+ super(data.toString(), AtsPlugin.PLUGIN_ID);
+ this.data = data;
+ }
+
+ @Override
+ protected void doWork(IProgressMonitor monitor) throws OseeCoreException {
+ if (!Strings.isValid(data.getSearchStr())) {
+ AWorkbench.popup("Must Enter Search String");
+ return;
+ }
+ if (worldEditor == null) {
+ WorldEditor.open(new WorldEditorOperationProvider(new AtsQuickSearchOperation(data)));
+ return;
+ }
+ for (String str : data.getSearchStr().split(", ")) {
+ if (HumanReadableId.isValid(str)) {
+ try {
+ Artifact art = ArtifactQuery.getArtifactFromId(str, AtsUtil.getAtsBranch());
+ if (art != null) {
+ allArtifacts.add(art);
+ }
+ } catch (ArtifactDoesNotExist ex) {
+ // do nothing
+ }
+ }
+ }
+ for (Artifact art : ArtifactQuery.getArtifactListFromAttributeKeywords(AtsUtil.getAtsBranch(),
+ data.getSearchStr(), false, EXCLUDE_DELETED, false)) {
+ // only ATS Artifacts
+ if (art instanceof StateMachineArtifact) {
+ StateMachineArtifact sma = (StateMachineArtifact) art;
+ // default excludes canceled/completed
+ if (data.isIncludeCompleteCancelled() == false) {
+ if (!sma.isCancelledOrCompleted()) {
+ allArtifacts.add(art);
+ }
+ } else {
+ allArtifacts.add(art);
+ }
+ }
+ }
+ if (allArtifacts.isEmpty()) {
+ AWorkbench.popup(getName(), getName() + "\n\nNo Results Found");
+ } else if (worldEditor != null) {
+ worldEditor.getWorldComposite().load(getName(), allArtifacts, TableLoadOption.None);
+ }
+ }
+
+ @Override
+ public String getName() {
+ return data.toString();
+ }
+
+ public Set<Artifact> getAllArtifacts() {
+ return allArtifacts;
+ }
+
+ @Override
+ public WorldEditor getWorldEditor() {
+ return worldEditor;
+ }
+
+ @Override
+ public void setWorldEditor(WorldEditor worldEditor) {
+ this.worldEditor = worldEditor;
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsRemoteEventTestItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsRemoteEventTestItem.java
index 0480abe0a87..f5941874e28 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsRemoteEventTestItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/AtsRemoteEventTestItem.java
@@ -1,285 +1,288 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.logging.Level;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.osee.ats.AtsOpenOption;
-import org.eclipse.osee.ats.actions.wizard.NewActionJob;
-import org.eclipse.osee.ats.artifact.ActionArtifact;
-import org.eclipse.osee.ats.artifact.ActionableItemArtifact;
-import org.eclipse.osee.ats.artifact.AtsAttributeTypes;
-import org.eclipse.osee.ats.artifact.StateMachineArtifact.TransitionOption;
-import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
-import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact.DefaultTeamState;
-import org.eclipse.osee.ats.artifact.VersionArtifact;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.AtsArtifactTypes;
-import org.eclipse.osee.ats.util.AtsPriority.PriorityType;
-import org.eclipse.osee.ats.util.AtsRelationTypes;
-import org.eclipse.osee.ats.util.AtsUtil;
-import org.eclipse.osee.ats.world.WorldXNavigateItemAction;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.logging.OseeLog;
-import org.eclipse.osee.framework.skynet.core.UserManager;
-import org.eclipse.osee.framework.skynet.core.artifact.search.ArtifactQuery;
-import org.eclipse.osee.framework.skynet.core.event.OseeEventManager;
-import org.eclipse.osee.framework.skynet.core.transaction.SkynetTransaction;
-import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.skynet.results.XResultData;
-import org.eclipse.osee.framework.ui.skynet.util.ChangeType;
-import org.eclipse.osee.framework.ui.skynet.widgets.dialog.EntryDialog;
-import org.eclipse.osee.framework.ui.swt.Displays;
-
-/**
- * @author Donald G. Dunne
- */
-public class AtsRemoteEventTestItem extends WorldXNavigateItemAction {
-
- XResultData resultData;
-
- public AtsRemoteEventTestItem(XNavigateItem parent) {
- super(parent, "ATS Remote Event Test");
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
- if (AtsUtil.isProductionDb()) {
- AWorkbench.popup("ERROR", "This should not to be run on production DB");
- return;
- }
- MessageDialog dialog =
- new MessageDialog(Displays.getActiveShell(), getName(), null,
- getName() + "\n\nSelect Source or Destination Client", MessageDialog.QUESTION, new String[] {
- "Source Client", "Destination Client - Start", "Destination Client - End", "Cancel"}, 2);
- int result = dialog.open();
- resultData = new XResultData();
- if (result == 0) {
- runClientTest();
- } else if (result == 1) {
- EntryDialog diag = new EntryDialog(getName(), "Enter tt number of Source Client created Action");
- if (diag.open() == 0) {
- runDestinationTestStart(diag.getEntry());
- }
- } else if (result == 2) {
- EntryDialog diag = new EntryDialog(getName(), "Enter tt number of Source Client created Action");
- if (diag.open() == 0) {
- runDestinationTestEnd(diag.getEntry());
- }
- }
- }
-
- private void runClientTest() throws OseeCoreException {
- String title = getName() + " - Destination Client Test";
- resultData.log("Running " + title);
- NewActionJob job = null;
- job =
- new NewActionJob("tt", "description", ChangeType.Improvement, PriorityType.Priority_1, null, false,
- ActionableItemArtifact.getActionableItems(Arrays.asList("ATS")), null);
- job.setUser(true);
- job.setPriority(Job.LONG);
- job.schedule();
- try {
- job.join();
- } catch (InterruptedException ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
- }
-
- ActionArtifact actionArt = job.getActionArt();
- resultData.log("Created Action " + actionArt);
- TeamWorkFlowArtifact teamArt = actionArt.getTeamWorkFlowArtifacts().iterator().next();
-
- // Make current user assignee for convenience to developer
- teamArt.getStateMgr().addAssignee(UserManager.getUser());
- teamArt.persist();
-
- validateActionAtStart(actionArt);
-
- // Wait for destination client to start
- if (!MessageDialog.openConfirm(
- Displays.getActiveShell(),
- getName(),
- "Launch \"Destination Client - Start\" test, enter \"" + actionArt.getName().replaceFirst("tt ", "") + "\" and press Ok")) {
- return;
- }
-
- // Make changes and persist
- SkynetTransaction transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.Description, "description 2");
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.ChangeType, ChangeType.Problem.name());
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.PriorityType, PriorityType.Priority_2.getShortName());
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "yes");
- teamArt.addRelation(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version, getVersion256());
- teamArt.persist(transaction);
- transaction.execute();
-
- // Make changes and persist
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.Description, "description 3");
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.ProposedResolution, "this is resolution");
- teamArt.persist();
-
- // Make changes and persist
- teamArt.deleteRelation(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version, getVersion256());
- teamArt.addRelation(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version, getVersion257());
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "no");
- teamArt.persist();
-
- // Make changes and persist
- transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
- teamArt.deleteAttributes(AtsAttributeTypes.ValidationRequired);
- teamArt.deleteAttributes(AtsAttributeTypes.Resolution);
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.Description, "description 4");
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.ChangeType, ChangeType.Support.name());
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.PriorityType, PriorityType.Priority_3.getShortName());
- teamArt.setRelations(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version,
- Collections.singleton(getVersion258()));
- teamArt.persist(transaction);
- transaction.execute();
-
- // Make changes and persist
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "yes");
- teamArt.persist();
-
- // Make changes and transition
- transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
- teamArt.setRelations(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version,
- Collections.singleton(getVersion257()));
- teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "no");
- teamArt.persist(transaction);
- transaction.execute();
-
- transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
- teamArt.transition(DefaultTeamState.Analyze.name(), Collections.singleton(UserManager.getUser()), transaction,
- TransitionOption.Persist);
- teamArt.persist(transaction);
- transaction.execute();
-
- validateActionAtEnd(actionArt);
-
- // Wait for destination client to end
- if (!MessageDialog.openConfirm(
- Displays.getActiveShell(),
- getName(),
- "Launch \"Destination Client - End\" test, enter \"" + actionArt.getName().replaceFirst("tt ", "") + "\" and press Ok")) {
- return;
- }
-
- resultData.report(title);
- }
-
- private VersionArtifact getVersion256() throws OseeCoreException {
- return (VersionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Version, "2.5.6",
- AtsUtil.getAtsBranch());
- }
-
- private VersionArtifact getVersion257() throws OseeCoreException {
- return (VersionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Version, "2.5.7",
- AtsUtil.getAtsBranch());
- }
-
- private VersionArtifact getVersion258() throws OseeCoreException {
- return (VersionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Version, "2.5.8",
- AtsUtil.getAtsBranch());
- }
-
- private void validateActionAtStart(ActionArtifact actionArt) throws OseeCoreException {
- resultData.log("\nValidating Start...");
- // Ensure event service is connected
- if (!OseeEventManager.isEventManagerConnected()) {
- resultData.logError("Remote Event Service is not connected");
- return;
- }
- resultData.log("Remote Event Service connected");
-
- // Validate values
- TeamWorkFlowArtifact teamArt = actionArt.getTeamWorkFlowArtifacts().iterator().next();
- testEquals("Description", "description", teamArt.getSoleAttributeValue(AtsAttributeTypes.Description, null));
- testEquals("Change Type", ChangeType.Improvement.name(),
- teamArt.getSoleAttributeValue(AtsAttributeTypes.ChangeType, null));
- testEquals("Priority", PriorityType.Priority_1.getShortName(),
- teamArt.getSoleAttributeValue(AtsAttributeTypes.PriorityType, null));
- }
-
- private void validateActionAtEnd(ActionArtifact actionArt) throws OseeCoreException {
- resultData.log("\nValidating End...");
- // Ensure event service is connected
- if (!OseeEventManager.isEventManagerConnected()) {
- resultData.logError("Remote Event Service is not connected");
- return;
- }
- resultData.log("Remote Event Service connected");
-
- // Validate values
- TeamWorkFlowArtifact teamArt = actionArt.getTeamWorkFlowArtifacts().iterator().next();
- testEquals("Description", "description 4", teamArt.getSoleAttributeValue(AtsAttributeTypes.Description, null));
- testEquals("Change Type", ChangeType.Support.name(),
- teamArt.getSoleAttributeValue(AtsAttributeTypes.ChangeType, null));
- testEquals("Priority", PriorityType.Priority_3.getShortName(),
- teamArt.getSoleAttributeValue(AtsAttributeTypes.PriorityType, null));
- testEquals("Validation Required", "false",
- String.valueOf(teamArt.getSoleAttributeValue(AtsAttributeTypes.ValidationRequired, null)));
- testEquals("Targeted Version",
- (teamArt.getTargetedForVersion() != null ? teamArt.getTargetedForVersion().toString() : "not set"), "2.5.7");
- testEquals("State", DefaultTeamState.Analyze.name(), teamArt.getStateMgr().getCurrentStateName());
- }
-
- private void testEquals(String name, Object expected, Object actual) {
- if (!expected.equals(actual)) {
- resultData.logError(String.format("Error: [%s] - expected [%s] actual[%s]", name, expected, actual));
- } else {
- resultData.log(String.format("Valid: [%s] - expected [%s] actual[%s]", name, expected, actual));
- }
- }
-
- private void runDestinationTestStart(String ttNum) throws OseeCoreException {
- String title = getName() + " - Destination Client Test - Start";
- String actionTitle = "tt " + ttNum;
- resultData.log("Running " + title);
-
- ActionArtifact actionArt =
- (ActionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Action, actionTitle,
- AtsUtil.getAtsBranch());
-
- if (actionArt == null) {
- resultData.logError(String.format("Couldn't load Action named [%s]", actionTitle));
- } else {
- resultData.log("Loaded Action " + actionArt);
- AtsUtil.openATSAction(actionArt, AtsOpenOption.OpenOneOrPopupSelect);
- }
- validateActionAtStart(actionArt);
- resultData.report(title);
- }
-
- private void runDestinationTestEnd(String ttNum) throws OseeCoreException {
- String title = getName() + " - Destination Client Test - End";
- String actionTitle = "tt " + ttNum;
- resultData.log("Running " + title);
-
- ActionArtifact actionArt =
- (ActionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Action, actionTitle,
- AtsUtil.getAtsBranch());
-
- if (actionArt == null) {
- resultData.logError(String.format("Couldn't load Action named [%s]", actionTitle));
- } else {
- resultData.log("Loaded Action " + actionArt);
- AtsUtil.openATSAction(actionArt, AtsOpenOption.OpenOneOrPopupSelect);
- }
- validateActionAtEnd(actionArt);
- resultData.report(title);
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.logging.Level;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.osee.ats.AtsOpenOption;
+import org.eclipse.osee.ats.actions.wizard.NewActionJob;
+import org.eclipse.osee.ats.artifact.ActionArtifact;
+import org.eclipse.osee.ats.artifact.ActionableItemArtifact;
+import org.eclipse.osee.ats.artifact.AtsAttributeTypes;
+import org.eclipse.osee.ats.artifact.StateMachineArtifact.TransitionOption;
+import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
+import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact.DefaultTeamState;
+import org.eclipse.osee.ats.artifact.VersionArtifact;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.AtsArtifactTypes;
+import org.eclipse.osee.ats.util.AtsPriority.PriorityType;
+import org.eclipse.osee.ats.util.AtsRelationTypes;
+import org.eclipse.osee.ats.util.AtsUtil;
+import org.eclipse.osee.ats.world.WorldXNavigateItemAction;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.UserManager;
+import org.eclipse.osee.framework.skynet.core.artifact.search.ArtifactQuery;
+import org.eclipse.osee.framework.skynet.core.event.OseeEventManager;
+import org.eclipse.osee.framework.skynet.core.transaction.SkynetTransaction;
+import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.skynet.results.XResultData;
+import org.eclipse.osee.framework.ui.skynet.util.ChangeType;
+import org.eclipse.osee.framework.ui.skynet.widgets.dialog.EntryDialog;
+import org.eclipse.osee.framework.ui.swt.Displays;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class AtsRemoteEventTestItem extends WorldXNavigateItemAction {
+
+ XResultData resultData;
+
+ public AtsRemoteEventTestItem(XNavigateItem parent) {
+ super(parent, "ATS Remote Event Test");
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
+ if (AtsUtil.isProductionDb()) {
+ AWorkbench.popup("ERROR", "This should not to be run on production DB");
+ return;
+ }
+ MessageDialog dialog =
+ new MessageDialog(Displays.getActiveShell(), getName(), null,
+ getName() + "\n\nSelect Source or Destination Client", MessageDialog.QUESTION, new String[] {
+ "Source Client",
+ "Destination Client - Start",
+ "Destination Client - End",
+ "Cancel"}, 2);
+ int result = dialog.open();
+ resultData = new XResultData();
+ if (result == 0) {
+ runClientTest();
+ } else if (result == 1) {
+ EntryDialog diag = new EntryDialog(getName(), "Enter tt number of Source Client created Action");
+ if (diag.open() == 0) {
+ runDestinationTestStart(diag.getEntry());
+ }
+ } else if (result == 2) {
+ EntryDialog diag = new EntryDialog(getName(), "Enter tt number of Source Client created Action");
+ if (diag.open() == 0) {
+ runDestinationTestEnd(diag.getEntry());
+ }
+ }
+ }
+
+ private void runClientTest() throws OseeCoreException {
+ String title = getName() + " - Destination Client Test";
+ resultData.log("Running " + title);
+ NewActionJob job = null;
+ job =
+ new NewActionJob("tt", "description", ChangeType.Improvement, PriorityType.Priority_1, null, false,
+ ActionableItemArtifact.getActionableItems(Arrays.asList("ATS")), null);
+ job.setUser(true);
+ job.setPriority(Job.LONG);
+ job.schedule();
+ try {
+ job.join();
+ } catch (InterruptedException ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
+ }
+
+ ActionArtifact actionArt = job.getActionArt();
+ resultData.log("Created Action " + actionArt);
+ TeamWorkFlowArtifact teamArt = actionArt.getTeamWorkFlowArtifacts().iterator().next();
+
+ // Make current user assignee for convenience to developer
+ teamArt.getStateMgr().addAssignee(UserManager.getUser());
+ teamArt.persist();
+
+ validateActionAtStart(actionArt);
+
+ // Wait for destination client to start
+ if (!MessageDialog.openConfirm(
+ Displays.getActiveShell(),
+ getName(),
+ "Launch \"Destination Client - Start\" test, enter \"" + actionArt.getName().replaceFirst("tt ", "") + "\" and press Ok")) {
+ return;
+ }
+
+ // Make changes and persist
+ SkynetTransaction transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.Description, "description 2");
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.ChangeType, ChangeType.Problem.name());
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.PriorityType, PriorityType.Priority_2.getShortName());
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "yes");
+ teamArt.addRelation(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version, getVersion256());
+ teamArt.persist(transaction);
+ transaction.execute();
+
+ // Make changes and persist
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.Description, "description 3");
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.ProposedResolution, "this is resolution");
+ teamArt.persist();
+
+ // Make changes and persist
+ teamArt.deleteRelation(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version, getVersion256());
+ teamArt.addRelation(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version, getVersion257());
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "no");
+ teamArt.persist();
+
+ // Make changes and persist
+ transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
+ teamArt.deleteAttributes(AtsAttributeTypes.ValidationRequired);
+ teamArt.deleteAttributes(AtsAttributeTypes.Resolution);
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.Description, "description 4");
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.ChangeType, ChangeType.Support.name());
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.PriorityType, PriorityType.Priority_3.getShortName());
+ teamArt.setRelations(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version,
+ Collections.singleton(getVersion258()));
+ teamArt.persist(transaction);
+ transaction.execute();
+
+ // Make changes and persist
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "yes");
+ teamArt.persist();
+
+ // Make changes and transition
+ transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
+ teamArt.setRelations(AtsRelationTypes.TeamWorkflowTargetedForVersion_Version,
+ Collections.singleton(getVersion257()));
+ teamArt.setSoleAttributeFromString(AtsAttributeTypes.ValidationRequired, "no");
+ teamArt.persist(transaction);
+ transaction.execute();
+
+ transaction = new SkynetTransaction(AtsUtil.getAtsBranch(), "Remote Event Test");
+ teamArt.transition(DefaultTeamState.Analyze.name(), Collections.singleton(UserManager.getUser()), transaction,
+ TransitionOption.Persist);
+ teamArt.persist(transaction);
+ transaction.execute();
+
+ validateActionAtEnd(actionArt);
+
+ // Wait for destination client to end
+ if (!MessageDialog.openConfirm(
+ Displays.getActiveShell(),
+ getName(),
+ "Launch \"Destination Client - End\" test, enter \"" + actionArt.getName().replaceFirst("tt ", "") + "\" and press Ok")) {
+ return;
+ }
+
+ resultData.report(title);
+ }
+
+ private VersionArtifact getVersion256() throws OseeCoreException {
+ return (VersionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Version, "2.5.6",
+ AtsUtil.getAtsBranch());
+ }
+
+ private VersionArtifact getVersion257() throws OseeCoreException {
+ return (VersionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Version, "2.5.7",
+ AtsUtil.getAtsBranch());
+ }
+
+ private VersionArtifact getVersion258() throws OseeCoreException {
+ return (VersionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Version, "2.5.8",
+ AtsUtil.getAtsBranch());
+ }
+
+ private void validateActionAtStart(ActionArtifact actionArt) throws OseeCoreException {
+ resultData.log("\nValidating Start...");
+ // Ensure event service is connected
+ if (!OseeEventManager.isEventManagerConnected()) {
+ resultData.logError("Remote Event Service is not connected");
+ return;
+ }
+ resultData.log("Remote Event Service connected");
+
+ // Validate values
+ TeamWorkFlowArtifact teamArt = actionArt.getTeamWorkFlowArtifacts().iterator().next();
+ testEquals("Description", "description", teamArt.getSoleAttributeValue(AtsAttributeTypes.Description, null));
+ testEquals("Change Type", ChangeType.Improvement.name(),
+ teamArt.getSoleAttributeValue(AtsAttributeTypes.ChangeType, null));
+ testEquals("Priority", PriorityType.Priority_1.getShortName(),
+ teamArt.getSoleAttributeValue(AtsAttributeTypes.PriorityType, null));
+ }
+
+ private void validateActionAtEnd(ActionArtifact actionArt) throws OseeCoreException {
+ resultData.log("\nValidating End...");
+ // Ensure event service is connected
+ if (!OseeEventManager.isEventManagerConnected()) {
+ resultData.logError("Remote Event Service is not connected");
+ return;
+ }
+ resultData.log("Remote Event Service connected");
+
+ // Validate values
+ TeamWorkFlowArtifact teamArt = actionArt.getTeamWorkFlowArtifacts().iterator().next();
+ testEquals("Description", "description 4", teamArt.getSoleAttributeValue(AtsAttributeTypes.Description, null));
+ testEquals("Change Type", ChangeType.Support.name(),
+ teamArt.getSoleAttributeValue(AtsAttributeTypes.ChangeType, null));
+ testEquals("Priority", PriorityType.Priority_3.getShortName(),
+ teamArt.getSoleAttributeValue(AtsAttributeTypes.PriorityType, null));
+ testEquals("Validation Required", "false",
+ String.valueOf(teamArt.getSoleAttributeValue(AtsAttributeTypes.ValidationRequired, null)));
+ testEquals("Targeted Version",
+ (teamArt.getTargetedForVersion() != null ? teamArt.getTargetedForVersion().toString() : "not set"), "2.5.7");
+ testEquals("State", DefaultTeamState.Analyze.name(), teamArt.getStateMgr().getCurrentStateName());
+ }
+
+ private void testEquals(String name, Object expected, Object actual) {
+ if (!expected.equals(actual)) {
+ resultData.logError(String.format("Error: [%s] - expected [%s] actual[%s]", name, expected, actual));
+ } else {
+ resultData.log(String.format("Valid: [%s] - expected [%s] actual[%s]", name, expected, actual));
+ }
+ }
+
+ private void runDestinationTestStart(String ttNum) throws OseeCoreException {
+ String title = getName() + " - Destination Client Test - Start";
+ String actionTitle = "tt " + ttNum;
+ resultData.log("Running " + title);
+
+ ActionArtifact actionArt =
+ (ActionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Action, actionTitle,
+ AtsUtil.getAtsBranch());
+
+ if (actionArt == null) {
+ resultData.logError(String.format("Couldn't load Action named [%s]", actionTitle));
+ } else {
+ resultData.log("Loaded Action " + actionArt);
+ AtsUtil.openATSAction(actionArt, AtsOpenOption.OpenOneOrPopupSelect);
+ }
+ validateActionAtStart(actionArt);
+ resultData.report(title);
+ }
+
+ private void runDestinationTestEnd(String ttNum) throws OseeCoreException {
+ String title = getName() + " - Destination Client Test - End";
+ String actionTitle = "tt " + ttNum;
+ resultData.log("Running " + title);
+
+ ActionArtifact actionArt =
+ (ActionArtifact) ArtifactQuery.getArtifactFromTypeAndName(AtsArtifactTypes.Action, actionTitle,
+ AtsUtil.getAtsBranch());
+
+ if (actionArt == null) {
+ resultData.logError(String.format("Couldn't load Action named [%s]", actionTitle));
+ } else {
+ resultData.log("Loaded Action " + actionArt);
+ AtsUtil.openATSAction(actionArt, AtsOpenOption.OpenOneOrPopupSelect);
+ }
+ validateActionAtEnd(actionArt);
+ resultData.report(title);
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/BarChartExample.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/BarChartExample.java
index 1a7b502fae5..6b40fca82dc 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/BarChartExample.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/BarChartExample.java
@@ -1,168 +1,164 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.birt.chart.model.Chart;
-import org.eclipse.birt.chart.model.ChartWithAxes;
-import org.eclipse.birt.chart.model.attribute.Anchor;
-import org.eclipse.birt.chart.model.attribute.AxisType;
-import org.eclipse.birt.chart.model.attribute.ChartDimension;
-import org.eclipse.birt.chart.model.attribute.IntersectionType;
-import org.eclipse.birt.chart.model.attribute.Position;
-import org.eclipse.birt.chart.model.attribute.TickStyle;
-import org.eclipse.birt.chart.model.attribute.impl.ColorDefinitionImpl;
-import org.eclipse.birt.chart.model.component.Axis;
-import org.eclipse.birt.chart.model.component.Series;
-import org.eclipse.birt.chart.model.component.impl.SeriesImpl;
-import org.eclipse.birt.chart.model.data.NumberDataSet;
-import org.eclipse.birt.chart.model.data.SeriesDefinition;
-import org.eclipse.birt.chart.model.data.TextDataSet;
-import org.eclipse.birt.chart.model.data.impl.NumberDataSetImpl;
-import org.eclipse.birt.chart.model.data.impl.SeriesDefinitionImpl;
-import org.eclipse.birt.chart.model.data.impl.TextDataSetImpl;
-import org.eclipse.birt.chart.model.impl.ChartWithAxesImpl;
-import org.eclipse.birt.chart.model.layout.Legend;
-import org.eclipse.birt.chart.model.layout.Plot;
-import org.eclipse.birt.chart.model.type.BarSeries;
-import org.eclipse.birt.chart.model.type.impl.BarSeriesImpl;
-import org.eclipse.osee.ats.AtsImage;
-import org.eclipse.osee.framework.jdk.core.util.AHTML;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.skynet.results.IResultsEditorProvider;
-import org.eclipse.osee.framework.ui.skynet.results.IResultsEditorTab;
-import org.eclipse.osee.framework.ui.skynet.results.ResultsEditor;
-import org.eclipse.osee.framework.ui.skynet.results.chart.ResultsEditorChartTab;
-import org.eclipse.osee.framework.ui.skynet.results.html.ResultsEditorHtmlTab;
-
-public class BarChartExample extends XNavigateItemAction {
-
- /**
- * @param parent
- * @param action
- */
- public BarChartExample(XNavigateItem parent) {
- super(parent, "Bar Chart Example", AtsImage.REPORT);
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) throws Exception {
- ResultsEditor.open(new IResultsEditorProvider() {
-
- @Override
- public String getEditorName() {
- return "Example Bar Chart";
- }
-
- @Override
- public List<IResultsEditorTab> getResultsEditorTabs() {
- List<IResultsEditorTab> tabs = new ArrayList<IResultsEditorTab>();
- tabs.add(new ResultsEditorChartTab("Chart", createMyChart()));
- tabs.add(getReportHtmlTab());
- return tabs;
- }
-
- });
- }
-
- private IResultsEditorTab getReportHtmlTab() {
- StringBuffer sb = new StringBuffer();
- sb.append("Example Bar Chart Data");
- sb.append(AHTML.beginMultiColumnTable(95, 1));
- sb.append(AHTML.addHeaderRowMultiColumnTable(new String[] {"Type", "Title", "Status"}));
- for (int x = 0; x < 3; x++) {
- sb.append(AHTML.addRowMultiColumnTable(new String[] {"Type " + x, "Title " + x, x + ""}));
- }
- sb.append(AHTML.endMultiColumnTable());
- return new ResultsEditorHtmlTab("Example Bar Chart Data", "Report", AHTML.simplePage(sb.toString()));
- }
-
- @SuppressWarnings({"deprecation"})
- public static Chart createMyChart() {
- // bart charts are based on charts that contain axes
- ChartWithAxes cwaBar = ChartWithAxesImpl.create();
- cwaBar.getBlock().setBackground(ColorDefinitionImpl.WHITE());
- cwaBar.getBlock().getOutline().setVisible(true);
- cwaBar.setDimension(ChartDimension.TWO_DIMENSIONAL_WITH_DEPTH_LITERAL);
-
- // customize the plot
- Plot p = cwaBar.getPlot();
- p.getClientArea().setBackground(ColorDefinitionImpl.create(255, 255, 225));
- p.getOutline().setVisible(false);
-
- cwaBar.getTitle().getLabel().getCaption().setValue("Example Bar Chart");
-
- // customize the legend
- Legend lg = cwaBar.getLegend();
- lg.getText().getFont().setSize(16);
- lg.getInsets().set(10, 5, 0, 0);
- lg.setAnchor(Anchor.NORTH_LITERAL);
-
- // customize the X-axis
- Axis xAxisPrimary = cwaBar.getPrimaryBaseAxes()[0];
- xAxisPrimary.setType(AxisType.TEXT_LITERAL);
- xAxisPrimary.getMajorGrid().setTickStyle(TickStyle.BELOW_LITERAL);
- xAxisPrimary.getOrigin().setType(IntersectionType.VALUE_LITERAL);
- xAxisPrimary.getTitle().setVisible(false);
-
- // customize the Y-axis
- Axis yAxisPrimary = cwaBar.getPrimaryOrthogonalAxis(xAxisPrimary);
- yAxisPrimary.getMajorGrid().setTickStyle(TickStyle.LEFT_LITERAL);
- yAxisPrimary.setType(AxisType.LINEAR_LITERAL);
- yAxisPrimary.getLabel().getCaption().getFont().setRotation(90);
-
- // initialize a collection with the X-series data
- java.util.Vector<String> vs = new java.util.Vector<String>();
- vs.add("zero");
- vs.add("one");
- vs.add("two");
-
- TextDataSet categoryValues = TextDataSetImpl.create(vs);
-
- // initialize a collection with the Y-series data
- ArrayList<Double> vn1 = new ArrayList<Double>();
- vn1.add(new Double(25));
- vn1.add(new Double(35));
- vn1.add(new Double(-45));
-
- NumberDataSet orthoValues1 = NumberDataSetImpl.create(vn1);
-
- // create the category base series
- Series seCategory = SeriesImpl.create();
- seCategory.setDataSet(categoryValues);
-
- // create the value orthogonal series
- BarSeries bs1 = (BarSeries) BarSeriesImpl.create();
- bs1.setSeriesIdentifier("My Bar Series");
- bs1.setDataSet(orthoValues1);
- bs1.setRiserOutline(null);
- bs1.getLabel().setVisible(true);
- bs1.setLabelPosition(Position.INSIDE_LITERAL);
-
- // wrap the base series in the X-axis series definition
- SeriesDefinition sdX = SeriesDefinitionImpl.create();
- sdX.getSeriesPalette().update(0); // set the colors in the palette
- xAxisPrimary.getSeriesDefinitions().add(sdX);
- sdX.getSeries().add(seCategory);
-
- // wrap the orthogonal series in the X-axis series definition
- SeriesDefinition sdY = SeriesDefinitionImpl.create();
- sdY.getSeriesPalette().update(1); // set the color in the palette
- yAxisPrimary.getSeriesDefinitions().add(sdY);
- sdY.getSeries().add(bs1);
-
- return cwaBar;
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.eclipse.birt.chart.model.Chart;
+import org.eclipse.birt.chart.model.ChartWithAxes;
+import org.eclipse.birt.chart.model.attribute.Anchor;
+import org.eclipse.birt.chart.model.attribute.AxisType;
+import org.eclipse.birt.chart.model.attribute.ChartDimension;
+import org.eclipse.birt.chart.model.attribute.IntersectionType;
+import org.eclipse.birt.chart.model.attribute.Position;
+import org.eclipse.birt.chart.model.attribute.TickStyle;
+import org.eclipse.birt.chart.model.attribute.impl.ColorDefinitionImpl;
+import org.eclipse.birt.chart.model.component.Axis;
+import org.eclipse.birt.chart.model.component.Series;
+import org.eclipse.birt.chart.model.component.impl.SeriesImpl;
+import org.eclipse.birt.chart.model.data.NumberDataSet;
+import org.eclipse.birt.chart.model.data.SeriesDefinition;
+import org.eclipse.birt.chart.model.data.TextDataSet;
+import org.eclipse.birt.chart.model.data.impl.NumberDataSetImpl;
+import org.eclipse.birt.chart.model.data.impl.SeriesDefinitionImpl;
+import org.eclipse.birt.chart.model.data.impl.TextDataSetImpl;
+import org.eclipse.birt.chart.model.impl.ChartWithAxesImpl;
+import org.eclipse.birt.chart.model.layout.Legend;
+import org.eclipse.birt.chart.model.layout.Plot;
+import org.eclipse.birt.chart.model.type.BarSeries;
+import org.eclipse.birt.chart.model.type.impl.BarSeriesImpl;
+import org.eclipse.osee.ats.AtsImage;
+import org.eclipse.osee.framework.jdk.core.util.AHTML;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.skynet.results.IResultsEditorProvider;
+import org.eclipse.osee.framework.ui.skynet.results.IResultsEditorTab;
+import org.eclipse.osee.framework.ui.skynet.results.ResultsEditor;
+import org.eclipse.osee.framework.ui.skynet.results.chart.ResultsEditorChartTab;
+import org.eclipse.osee.framework.ui.skynet.results.html.ResultsEditorHtmlTab;
+
+public class BarChartExample extends XNavigateItemAction {
+
+ public BarChartExample(XNavigateItem parent) {
+ super(parent, "Bar Chart Example", AtsImage.REPORT);
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) throws Exception {
+ ResultsEditor.open(new IResultsEditorProvider() {
+
+ @Override
+ public String getEditorName() {
+ return "Example Bar Chart";
+ }
+
+ @Override
+ public List<IResultsEditorTab> getResultsEditorTabs() {
+ List<IResultsEditorTab> tabs = new ArrayList<IResultsEditorTab>();
+ tabs.add(new ResultsEditorChartTab("Chart", createMyChart()));
+ tabs.add(getReportHtmlTab());
+ return tabs;
+ }
+
+ });
+ }
+
+ private IResultsEditorTab getReportHtmlTab() {
+ StringBuffer sb = new StringBuffer();
+ sb.append("Example Bar Chart Data");
+ sb.append(AHTML.beginMultiColumnTable(95, 1));
+ sb.append(AHTML.addHeaderRowMultiColumnTable(new String[] {"Type", "Title", "Status"}));
+ for (int x = 0; x < 3; x++) {
+ sb.append(AHTML.addRowMultiColumnTable(new String[] {"Type " + x, "Title " + x, x + ""}));
+ }
+ sb.append(AHTML.endMultiColumnTable());
+ return new ResultsEditorHtmlTab("Example Bar Chart Data", "Report", AHTML.simplePage(sb.toString()));
+ }
+
+ @SuppressWarnings({"deprecation"})
+ public static Chart createMyChart() {
+ // bart charts are based on charts that contain axes
+ ChartWithAxes cwaBar = ChartWithAxesImpl.create();
+ cwaBar.getBlock().setBackground(ColorDefinitionImpl.WHITE());
+ cwaBar.getBlock().getOutline().setVisible(true);
+ cwaBar.setDimension(ChartDimension.TWO_DIMENSIONAL_WITH_DEPTH_LITERAL);
+
+ // customize the plot
+ Plot p = cwaBar.getPlot();
+ p.getClientArea().setBackground(ColorDefinitionImpl.create(255, 255, 225));
+ p.getOutline().setVisible(false);
+
+ cwaBar.getTitle().getLabel().getCaption().setValue("Example Bar Chart");
+
+ // customize the legend
+ Legend lg = cwaBar.getLegend();
+ lg.getText().getFont().setSize(16);
+ lg.getInsets().set(10, 5, 0, 0);
+ lg.setAnchor(Anchor.NORTH_LITERAL);
+
+ // customize the X-axis
+ Axis xAxisPrimary = cwaBar.getPrimaryBaseAxes()[0];
+ xAxisPrimary.setType(AxisType.TEXT_LITERAL);
+ xAxisPrimary.getMajorGrid().setTickStyle(TickStyle.BELOW_LITERAL);
+ xAxisPrimary.getOrigin().setType(IntersectionType.VALUE_LITERAL);
+ xAxisPrimary.getTitle().setVisible(false);
+
+ // customize the Y-axis
+ Axis yAxisPrimary = cwaBar.getPrimaryOrthogonalAxis(xAxisPrimary);
+ yAxisPrimary.getMajorGrid().setTickStyle(TickStyle.LEFT_LITERAL);
+ yAxisPrimary.setType(AxisType.LINEAR_LITERAL);
+ yAxisPrimary.getLabel().getCaption().getFont().setRotation(90);
+
+ // initialize a collection with the X-series data
+ java.util.Vector<String> vs = new java.util.Vector<String>();
+ vs.add("zero");
+ vs.add("one");
+ vs.add("two");
+
+ TextDataSet categoryValues = TextDataSetImpl.create(vs);
+
+ // initialize a collection with the Y-series data
+ ArrayList<Double> vn1 = new ArrayList<Double>();
+ vn1.add(new Double(25));
+ vn1.add(new Double(35));
+ vn1.add(new Double(-45));
+
+ NumberDataSet orthoValues1 = NumberDataSetImpl.create(vn1);
+
+ // create the category base series
+ Series seCategory = SeriesImpl.create();
+ seCategory.setDataSet(categoryValues);
+
+ // create the value orthogonal series
+ BarSeries bs1 = (BarSeries) BarSeriesImpl.create();
+ bs1.setSeriesIdentifier("My Bar Series");
+ bs1.setDataSet(orthoValues1);
+ bs1.setRiserOutline(null);
+ bs1.getLabel().setVisible(true);
+ bs1.setLabelPosition(Position.INSIDE_LITERAL);
+
+ // wrap the base series in the X-axis series definition
+ SeriesDefinition sdX = SeriesDefinitionImpl.create();
+ sdX.getSeriesPalette().update(0); // set the colors in the palette
+ xAxisPrimary.getSeriesDefinitions().add(sdX);
+ sdX.getSeries().add(seCategory);
+
+ // wrap the orthogonal series in the X-axis series definition
+ SeriesDefinition sdY = SeriesDefinitionImpl.create();
+ sdY.getSeriesPalette().update(1); // set the color in the palette
+ yAxisPrimary.getSeriesDefinitions().add(sdY);
+ sdY.getSeries().add(bs1);
+
+ return cwaBar;
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/CreateNewVersionItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/CreateNewVersionItem.java
index 3450b159ad6..829a222d696 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/CreateNewVersionItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/CreateNewVersionItem.java
@@ -43,7 +43,6 @@ public class CreateNewVersionItem extends XNavigateItemAction {
private final TeamDefinitionArtifact teamDefHoldingVersions;
/**
- * @param parent
* @param teamDefHoldingVersions Team Definition Artifact that is related to versions or null for popup selection
*/
public CreateNewVersionItem(XNavigateItem parent, TeamDefinitionArtifact teamDefHoldingVersions) {
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/DisplayCurrentOseeEventListeners.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/DisplayCurrentOseeEventListeners.java
index f04b972394b..1ba6ee172c9 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/DisplayCurrentOseeEventListeners.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/DisplayCurrentOseeEventListeners.java
@@ -24,9 +24,6 @@ import org.eclipse.osee.framework.ui.skynet.results.html.XResultPage;
*/
public class DisplayCurrentOseeEventListeners extends XNavigateItemAction {
- /**
- * @param parent
- */
public DisplayCurrentOseeEventListeners(XNavigateItem parent) {
super(parent, "Display Current OSEE Event Listeners", PluginUiImage.ADMIN);
}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/EmailTeamsItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/EmailTeamsItem.java
index 59828cb0cec..42aebd52e34 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/EmailTeamsItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/EmailTeamsItem.java
@@ -43,7 +43,6 @@ public class EmailTeamsItem extends XNavigateItemAction {
};
/**
- * @param parent
* @param teamDefHoldingVersions Team Definition Artifact that is related to versions or null for popup selection
*/
public EmailTeamsItem(XNavigateItem parent, TeamDefinitionArtifact teamDef, MemberType... memberType) {
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/FirstTimeQualityMetricReportItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/FirstTimeQualityMetricReportItem.java
index 4820e8e75f0..2d9637c3026 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/FirstTimeQualityMetricReportItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/FirstTimeQualityMetricReportItem.java
@@ -1,195 +1,197 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.util.Collection;
-import java.util.Date;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.osee.ats.AtsImage;
-import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
-import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
-import org.eclipse.osee.ats.config.AtsCacheManager;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.AtsArtifactTypes;
-import org.eclipse.osee.ats.util.AtsPriority.PriorityType;
-import org.eclipse.osee.ats.util.AtsUtil;
-import org.eclipse.osee.ats.util.VersionMetrics;
-import org.eclipse.osee.ats.util.VersionTeamMetrics;
-import org.eclipse.osee.ats.util.widgets.dialog.TeamDefinitionDialog;
-import org.eclipse.osee.framework.core.enums.Active;
-import org.eclipse.osee.framework.core.exception.MultipleAttributesExist;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.jdk.core.util.AHTML;
-import org.eclipse.osee.framework.logging.OseeLevel;
-import org.eclipse.osee.framework.logging.OseeLog;
-import org.eclipse.osee.framework.skynet.core.artifact.ArtifactTypeManager;
-import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.skynet.results.XResultData;
-import org.eclipse.osee.framework.ui.skynet.results.html.XResultPage.Manipulations;
-import org.eclipse.osee.framework.ui.skynet.util.ChangeType;
-import org.eclipse.osee.framework.ui.skynet.widgets.XDate;
-import org.eclipse.osee.framework.ui.swt.Displays;
-
-/**
- * @author Donald G. Dunne
- */
-public class FirstTimeQualityMetricReportItem extends XNavigateItemAction {
-
- private final TeamDefinitionArtifact teamDef;
- private final String teamDefName;
-
- public FirstTimeQualityMetricReportItem(XNavigateItem parent, String name, String teamDefName) {
- super(parent, name, AtsImage.REPORT);
- this.teamDefName = teamDefName;
- this.teamDef = null;
- }
-
- public FirstTimeQualityMetricReportItem(XNavigateItem parent) {
- this(parent, "First Time Quality Metric Report", null);
- }
-
- @Override
- public String getDescription() {
- return "This report will genereate a metric comprised of:\n\n# of priority 1 and 2 OSEE problem actions orginated between release\n__________________________________\n# of non-support actions in that released";
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
- TeamDefinitionArtifact useTeamDef = teamDef;
- if (useTeamDef == null && teamDefName != null) {
- useTeamDef =
- (TeamDefinitionArtifact) AtsCacheManager.getSoleArtifactByName(
- ArtifactTypeManager.getType(AtsArtifactTypes.TeamDefinition), teamDefName);
- }
- if (useTeamDef == null) {
- TeamDefinitionDialog ld = new TeamDefinitionDialog("Select Team", "Select Team");
- ld.setTitle(getName());
- try {
- ld.setInput(TeamDefinitionArtifact.getTeamReleaseableDefinitions(Active.Both));
- } catch (MultipleAttributesExist ex) {
- OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, ex);
- }
- int result = ld.open();
- if (result == 0) {
- if (ld.getResult().length == 0) {
- AWorkbench.popup("ERROR", "You must select a team to operate against.");
- return;
- }
- useTeamDef = (TeamDefinitionArtifact) ld.getResult()[0];
- } else {
- return;
- }
- } else if (!MessageDialog.openConfirm(Displays.getActiveShell(), getName(), getName())) {
- return;
- }
-
- ReportJob job = new ReportJob(getName(), useTeamDef);
- job.setUser(true);
- job.setPriority(Job.LONG);
- job.schedule();
- }
-
- private static class ReportJob extends Job {
-
- private final TeamDefinitionArtifact teamDef;
-
- public ReportJob(String title, TeamDefinitionArtifact teamDef) {
- super(title);
- this.teamDef = teamDef;
- }
-
- @Override
- public IStatus run(IProgressMonitor monitor) {
- try {
- XResultData resultData = new XResultData();
- String html = getTeamWorkflowReport(getName(), teamDef, monitor);
- resultData.addRaw(html);
- resultData.report(getName(), Manipulations.RAW_HTML);
- } catch (Exception ex) {
- return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
- }
- monitor.done();
- return Status.OK_STATUS;
- }
- }
-
- private static String[] HEADER_STRINGS =
- new String[] {"Version", "StartDate", "RelDate", "Num 1 + 2 Orig During Next Release Cycle",
- "Num Non-Support Released", "Ratio Orig 1 and 2 Bugs/Number Released"};
-
- /**
- * Ratio of # of priority 1 and 2 OSEE problem actions (non-cancelled) that were orginated between a release and the
- * next release / # of non-support actions released in that release
- *
- * @param teamDef
- * @param monitor
- * @return report
- */
- public static String getTeamWorkflowReport(String title, TeamDefinitionArtifact teamDef, IProgressMonitor monitor) throws OseeCoreException {
- StringBuilder sb = new StringBuilder();
- sb.append(AHTML.heading(3, title));
- sb.append(AHTML.beginMultiColumnTable(100, 1));
- sb.append(AHTML.addRowSpanMultiColumnTable(
- "This report shows the ratio of 1+2 problem workflows created during next release cycle due to current release over the total non-support workflows during this release.",
- HEADER_STRINGS.length));
- sb.append(AHTML.addHeaderRowMultiColumnTable(HEADER_STRINGS));
- VersionTeamMetrics teamMet = new VersionTeamMetrics(teamDef);
- Collection<VersionMetrics> verMets = teamMet.getReleasedOrderedVersions();
- monitor.beginTask("Processing Versions", verMets.size());
- for (VersionMetrics verMet : verMets) {
- Date thisReleaseStartDate = verMet.getReleaseStartDate();
- Date thisReleaseEndDate = verMet.getVerArt().getReleaseDate();
- Date nextReleaseStartDate = null;
- Date nextReleaseEndDate = null;
- VersionMetrics nextVerMet = verMet.getNextVerMetViaReleaseDate();
- if (nextVerMet != null) {
- nextReleaseStartDate = nextVerMet.getReleaseStartDate();
- nextReleaseEndDate = nextVerMet.getVerArt().getReleaseDate();
- }
- Integer numOrigDurningNextReleaseCycle = 0;
- if (nextReleaseStartDate != null && nextReleaseEndDate != null) {
- Collection<TeamWorkFlowArtifact> arts =
- teamMet.getWorkflowsOriginatedBetween(nextReleaseStartDate, nextReleaseEndDate);
- for (TeamWorkFlowArtifact team : arts) {
- if (!team.isCancelled() && team.getChangeType() == ChangeType.Problem && (team.getPriority() == PriorityType.Priority_1 || team.getPriority() == PriorityType.Priority_2)) {
- numOrigDurningNextReleaseCycle++;
- }
- }
- }
- Integer numNonSupportReleased = null;
- if (thisReleaseEndDate != null) {
- numNonSupportReleased = 0;
- for (TeamWorkFlowArtifact team : verMet.getTeamWorkFlows(ChangeType.Problem, ChangeType.Improvement)) {
- if (!team.isCancelled()) {
- numNonSupportReleased++;
- }
- }
- }
- sb.append(AHTML.addRowMultiColumnTable(new String[] {
- verMet.getVerArt().getName(),
- XDate.getDateStr(thisReleaseStartDate, XDate.MMDDYY),
- XDate.getDateStr(thisReleaseEndDate, XDate.MMDDYY),
- numOrigDurningNextReleaseCycle == 0 ? "N/A" : String.valueOf(numOrigDurningNextReleaseCycle),
- numNonSupportReleased == null ? "N/A" : String.valueOf(numNonSupportReleased),
- numOrigDurningNextReleaseCycle == 0 || numNonSupportReleased == null || numNonSupportReleased == 0 ? "N/A" : AtsUtil.doubleToI18nString((double) numOrigDurningNextReleaseCycle / (double) numNonSupportReleased)}));
- monitor.worked(1);
- }
- sb.append(AHTML.endMultiColumnTable());
- return sb.toString();
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.util.Collection;
+import java.util.Date;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.osee.ats.AtsImage;
+import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
+import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
+import org.eclipse.osee.ats.config.AtsCacheManager;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.AtsArtifactTypes;
+import org.eclipse.osee.ats.util.AtsPriority.PriorityType;
+import org.eclipse.osee.ats.util.AtsUtil;
+import org.eclipse.osee.ats.util.VersionMetrics;
+import org.eclipse.osee.ats.util.VersionTeamMetrics;
+import org.eclipse.osee.ats.util.widgets.dialog.TeamDefinitionDialog;
+import org.eclipse.osee.framework.core.enums.Active;
+import org.eclipse.osee.framework.core.exception.MultipleAttributesExist;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.jdk.core.util.AHTML;
+import org.eclipse.osee.framework.logging.OseeLevel;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.artifact.ArtifactTypeManager;
+import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.skynet.results.XResultData;
+import org.eclipse.osee.framework.ui.skynet.results.html.XResultPage.Manipulations;
+import org.eclipse.osee.framework.ui.skynet.util.ChangeType;
+import org.eclipse.osee.framework.ui.skynet.widgets.XDate;
+import org.eclipse.osee.framework.ui.swt.Displays;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class FirstTimeQualityMetricReportItem extends XNavigateItemAction {
+
+ private final TeamDefinitionArtifact teamDef;
+ private final String teamDefName;
+
+ public FirstTimeQualityMetricReportItem(XNavigateItem parent, String name, String teamDefName) {
+ super(parent, name, AtsImage.REPORT);
+ this.teamDefName = teamDefName;
+ this.teamDef = null;
+ }
+
+ public FirstTimeQualityMetricReportItem(XNavigateItem parent) {
+ this(parent, "First Time Quality Metric Report", null);
+ }
+
+ @Override
+ public String getDescription() {
+ return "This report will genereate a metric comprised of:\n\n# of priority 1 and 2 OSEE problem actions orginated between release\n__________________________________\n# of non-support actions in that released";
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
+ TeamDefinitionArtifact useTeamDef = teamDef;
+ if (useTeamDef == null && teamDefName != null) {
+ useTeamDef =
+ (TeamDefinitionArtifact) AtsCacheManager.getSoleArtifactByName(
+ ArtifactTypeManager.getType(AtsArtifactTypes.TeamDefinition), teamDefName);
+ }
+ if (useTeamDef == null) {
+ TeamDefinitionDialog ld = new TeamDefinitionDialog("Select Team", "Select Team");
+ ld.setTitle(getName());
+ try {
+ ld.setInput(TeamDefinitionArtifact.getTeamReleaseableDefinitions(Active.Both));
+ } catch (MultipleAttributesExist ex) {
+ OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, ex);
+ }
+ int result = ld.open();
+ if (result == 0) {
+ if (ld.getResult().length == 0) {
+ AWorkbench.popup("ERROR", "You must select a team to operate against.");
+ return;
+ }
+ useTeamDef = (TeamDefinitionArtifact) ld.getResult()[0];
+ } else {
+ return;
+ }
+ } else if (!MessageDialog.openConfirm(Displays.getActiveShell(), getName(), getName())) {
+ return;
+ }
+
+ ReportJob job = new ReportJob(getName(), useTeamDef);
+ job.setUser(true);
+ job.setPriority(Job.LONG);
+ job.schedule();
+ }
+
+ private static class ReportJob extends Job {
+
+ private final TeamDefinitionArtifact teamDef;
+
+ public ReportJob(String title, TeamDefinitionArtifact teamDef) {
+ super(title);
+ this.teamDef = teamDef;
+ }
+
+ @Override
+ public IStatus run(IProgressMonitor monitor) {
+ try {
+ XResultData resultData = new XResultData();
+ String html = getTeamWorkflowReport(getName(), teamDef, monitor);
+ resultData.addRaw(html);
+ resultData.report(getName(), Manipulations.RAW_HTML);
+ } catch (Exception ex) {
+ return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
+ }
+ monitor.done();
+ return Status.OK_STATUS;
+ }
+ }
+
+ private static String[] HEADER_STRINGS = new String[] {
+ "Version",
+ "StartDate",
+ "RelDate",
+ "Num 1 + 2 Orig During Next Release Cycle",
+ "Num Non-Support Released",
+ "Ratio Orig 1 and 2 Bugs/Number Released"};
+
+ /**
+ * Ratio of # of priority 1 and 2 OSEE problem actions (non-cancelled) that were orginated between a release and the
+ * next release / # of non-support actions released in that release
+ *
+ * @return report
+ */
+ public static String getTeamWorkflowReport(String title, TeamDefinitionArtifact teamDef, IProgressMonitor monitor) throws OseeCoreException {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AHTML.heading(3, title));
+ sb.append(AHTML.beginMultiColumnTable(100, 1));
+ sb.append(AHTML.addRowSpanMultiColumnTable(
+ "This report shows the ratio of 1+2 problem workflows created during next release cycle due to current release over the total non-support workflows during this release.",
+ HEADER_STRINGS.length));
+ sb.append(AHTML.addHeaderRowMultiColumnTable(HEADER_STRINGS));
+ VersionTeamMetrics teamMet = new VersionTeamMetrics(teamDef);
+ Collection<VersionMetrics> verMets = teamMet.getReleasedOrderedVersions();
+ monitor.beginTask("Processing Versions", verMets.size());
+ for (VersionMetrics verMet : verMets) {
+ Date thisReleaseStartDate = verMet.getReleaseStartDate();
+ Date thisReleaseEndDate = verMet.getVerArt().getReleaseDate();
+ Date nextReleaseStartDate = null;
+ Date nextReleaseEndDate = null;
+ VersionMetrics nextVerMet = verMet.getNextVerMetViaReleaseDate();
+ if (nextVerMet != null) {
+ nextReleaseStartDate = nextVerMet.getReleaseStartDate();
+ nextReleaseEndDate = nextVerMet.getVerArt().getReleaseDate();
+ }
+ Integer numOrigDurningNextReleaseCycle = 0;
+ if (nextReleaseStartDate != null && nextReleaseEndDate != null) {
+ Collection<TeamWorkFlowArtifact> arts =
+ teamMet.getWorkflowsOriginatedBetween(nextReleaseStartDate, nextReleaseEndDate);
+ for (TeamWorkFlowArtifact team : arts) {
+ if (!team.isCancelled() && team.getChangeType() == ChangeType.Problem && (team.getPriority() == PriorityType.Priority_1 || team.getPriority() == PriorityType.Priority_2)) {
+ numOrigDurningNextReleaseCycle++;
+ }
+ }
+ }
+ Integer numNonSupportReleased = null;
+ if (thisReleaseEndDate != null) {
+ numNonSupportReleased = 0;
+ for (TeamWorkFlowArtifact team : verMet.getTeamWorkFlows(ChangeType.Problem, ChangeType.Improvement)) {
+ if (!team.isCancelled()) {
+ numNonSupportReleased++;
+ }
+ }
+ }
+ sb.append(AHTML.addRowMultiColumnTable(new String[] {
+ verMet.getVerArt().getName(),
+ XDate.getDateStr(thisReleaseStartDate, XDate.MMDDYY),
+ XDate.getDateStr(thisReleaseEndDate, XDate.MMDDYY),
+ numOrigDurningNextReleaseCycle == 0 ? "N/A" : String.valueOf(numOrigDurningNextReleaseCycle),
+ numNonSupportReleased == null ? "N/A" : String.valueOf(numNonSupportReleased),
+ numOrigDurningNextReleaseCycle == 0 || numNonSupportReleased == null || numNonSupportReleased == 0 ? "N/A" : AtsUtil.doubleToI18nString((double) numOrigDurningNextReleaseCycle / (double) numNonSupportReleased)}));
+ monitor.worked(1);
+ }
+ sb.append(AHTML.endMultiColumnTable());
+ return sb.toString();
+ }
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateFullVersionReportItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateFullVersionReportItem.java
index 62142aa7d29..c3a3c314407 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateFullVersionReportItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateFullVersionReportItem.java
@@ -1,138 +1,138 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.osee.ats.navigate;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
-import org.eclipse.osee.ats.config.AtsCacheManager;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.AtsArtifactTypes;
-import org.eclipse.osee.ats.util.VersionReportJob;
-import org.eclipse.osee.ats.util.widgets.dialog.TeamDefinitionDialog;
-import org.eclipse.osee.framework.core.enums.Active;
-import org.eclipse.osee.framework.core.exception.ArtifactDoesNotExist;
-import org.eclipse.osee.framework.core.exception.MultipleAttributesExist;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.jdk.core.util.Strings;
-import org.eclipse.osee.framework.logging.OseeLevel;
-import org.eclipse.osee.framework.logging.OseeLog;
-import org.eclipse.osee.framework.skynet.core.artifact.ArtifactTypeManager;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
-import org.eclipse.osee.framework.ui.skynet.results.XResultData;
-import org.eclipse.osee.framework.ui.skynet.results.html.XResultPage.Manipulations;
-import org.eclipse.osee.framework.ui.skynet.widgets.XDate;
-import org.eclipse.osee.framework.ui.swt.Displays;
-
-/**
- * @author Donald G. Dunne
- */
-public class GenerateFullVersionReportItem extends XNavigateItemAction {
-
- private final TeamDefinitionArtifact teamDef;
- private final String teamDefName;
-
- public GenerateFullVersionReportItem(XNavigateItem parent) {
- super(parent, "Generate Full Version Report", FrameworkImage.VERSION);
- this.teamDefName = null;
- this.teamDef = null;
- }
-
- public GenerateFullVersionReportItem(XNavigateItem parent, TeamDefinitionArtifact teamDef) {
- super(parent, "Generate Full Version Report", FrameworkImage.VERSION);
- this.teamDefName = null;
- this.teamDef = teamDef;
- }
-
- public GenerateFullVersionReportItem(XNavigateItem parent, String teamDefName) {
- super(parent, "Generate Full Version Report", FrameworkImage.VERSION);
- this.teamDefName = teamDefName;
- this.teamDef = null;
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
- TeamDefinitionArtifact teamDef = getTeamDefinition();
- if (teamDef == null) {
- return;
- }
- if (!MessageDialog.openConfirm(Displays.getActiveShell(), getName(), getName())) {
- return;
- }
- PublishReportJob job = new PublishReportJob(teamDef);
- job.setUser(true);
- job.setPriority(Job.LONG);
- job.schedule();
- }
-
- public TeamDefinitionArtifact getTeamDefinition() throws OseeCoreException {
- if (teamDef != null) {
- return teamDef;
- }
- if (Strings.isValid(teamDefName)) {
- try {
- TeamDefinitionArtifact teamDef =
- (TeamDefinitionArtifact) AtsCacheManager.getSoleArtifactByName(
- ArtifactTypeManager.getType(AtsArtifactTypes.TeamDefinition), teamDefName);
-
- if (teamDef != null) {
- return teamDef;
- }
- } catch (ArtifactDoesNotExist ex) {
- // do nothing, going to get team below
- }
- }
- TeamDefinitionDialog ld = new TeamDefinitionDialog("Select Team", "Select Team");
- try {
- ld.setInput(TeamDefinitionArtifact.getTeamReleaseableDefinitions(Active.Active));
- } catch (MultipleAttributesExist ex) {
- OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, ex);
- }
- int result = ld.open();
- if (result == 0) {
- return (TeamDefinitionArtifact) ld.getResult()[0];
- }
- return null;
- }
-
- private static class PublishReportJob extends Job {
-
- private final TeamDefinitionArtifact teamDef;
-
- public PublishReportJob(TeamDefinitionArtifact teamDef) {
- super(teamDef.getName() + " as of " + XDate.getDateNow());
- this.teamDef = teamDef;
- }
-
- @Override
- public IStatus run(IProgressMonitor monitor) {
- try {
- String html = VersionReportJob.getFullReleaseReport(teamDef, monitor);
- XResultData rd = new XResultData();
- rd.addRaw(html);
- rd.report(getName(), Manipulations.RAW_HTML);
- } catch (Exception ex) {
- return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
- }
-
- monitor.done();
- return Status.OK_STATUS;
- }
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+
+package org.eclipse.osee.ats.navigate;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
+import org.eclipse.osee.ats.config.AtsCacheManager;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.AtsArtifactTypes;
+import org.eclipse.osee.ats.util.VersionReportJob;
+import org.eclipse.osee.ats.util.widgets.dialog.TeamDefinitionDialog;
+import org.eclipse.osee.framework.core.enums.Active;
+import org.eclipse.osee.framework.core.exception.ArtifactDoesNotExist;
+import org.eclipse.osee.framework.core.exception.MultipleAttributesExist;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.jdk.core.util.Strings;
+import org.eclipse.osee.framework.logging.OseeLevel;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.artifact.ArtifactTypeManager;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.skynet.FrameworkImage;
+import org.eclipse.osee.framework.ui.skynet.results.XResultData;
+import org.eclipse.osee.framework.ui.skynet.results.html.XResultPage.Manipulations;
+import org.eclipse.osee.framework.ui.skynet.widgets.XDate;
+import org.eclipse.osee.framework.ui.swt.Displays;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class GenerateFullVersionReportItem extends XNavigateItemAction {
+
+ private final TeamDefinitionArtifact teamDef;
+ private final String teamDefName;
+
+ public GenerateFullVersionReportItem(XNavigateItem parent) {
+ super(parent, "Generate Full Version Report", FrameworkImage.VERSION);
+ this.teamDefName = null;
+ this.teamDef = null;
+ }
+
+ public GenerateFullVersionReportItem(XNavigateItem parent, TeamDefinitionArtifact teamDef) {
+ super(parent, "Generate Full Version Report", FrameworkImage.VERSION);
+ this.teamDefName = null;
+ this.teamDef = teamDef;
+ }
+
+ public GenerateFullVersionReportItem(XNavigateItem parent, String teamDefName) {
+ super(parent, "Generate Full Version Report", FrameworkImage.VERSION);
+ this.teamDefName = teamDefName;
+ this.teamDef = null;
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
+ TeamDefinitionArtifact teamDef = getTeamDefinition();
+ if (teamDef == null) {
+ return;
+ }
+ if (!MessageDialog.openConfirm(Displays.getActiveShell(), getName(), getName())) {
+ return;
+ }
+ PublishReportJob job = new PublishReportJob(teamDef);
+ job.setUser(true);
+ job.setPriority(Job.LONG);
+ job.schedule();
+ }
+
+ public TeamDefinitionArtifact getTeamDefinition() throws OseeCoreException {
+ if (teamDef != null) {
+ return teamDef;
+ }
+ if (Strings.isValid(teamDefName)) {
+ try {
+ TeamDefinitionArtifact teamDef =
+ (TeamDefinitionArtifact) AtsCacheManager.getSoleArtifactByName(
+ ArtifactTypeManager.getType(AtsArtifactTypes.TeamDefinition), teamDefName);
+
+ if (teamDef != null) {
+ return teamDef;
+ }
+ } catch (ArtifactDoesNotExist ex) {
+ // do nothing, going to get team below
+ }
+ }
+ TeamDefinitionDialog ld = new TeamDefinitionDialog("Select Team", "Select Team");
+ try {
+ ld.setInput(TeamDefinitionArtifact.getTeamReleaseableDefinitions(Active.Active));
+ } catch (MultipleAttributesExist ex) {
+ OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, ex);
+ }
+ int result = ld.open();
+ if (result == 0) {
+ return (TeamDefinitionArtifact) ld.getResult()[0];
+ }
+ return null;
+ }
+
+ private static class PublishReportJob extends Job {
+
+ private final TeamDefinitionArtifact teamDef;
+
+ public PublishReportJob(TeamDefinitionArtifact teamDef) {
+ super(teamDef.getName() + " as of " + XDate.getDateNow());
+ this.teamDef = teamDef;
+ }
+
+ @Override
+ public IStatus run(IProgressMonitor monitor) {
+ try {
+ String html = VersionReportJob.getFullReleaseReport(teamDef, monitor);
+ XResultData rd = new XResultData();
+ rd.addRaw(html);
+ rd.report(getName(), Manipulations.RAW_HTML);
+ } catch (Exception ex) {
+ return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
+ }
+
+ monitor.done();
+ return Status.OK_STATUS;
+ }
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateGuid.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateGuid.java
index 05b4902d3fd..58e95ea716d 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateGuid.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateGuid.java
@@ -1,35 +1,35 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import org.eclipse.osee.ats.AtsImage;
-import org.eclipse.osee.framework.jdk.core.util.GUID;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.skynet.results.XResultData;
-
-public class GenerateGuid extends XNavigateItemAction {
-
- public GenerateGuid(XNavigateItem parent) {
- super(parent, "Generate Guid", AtsImage.REPORT);
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) throws Exception {
- XResultData resultData = new XResultData();
- for (int x = 0; x < 20; x++) {
- resultData.log(GUID.create());
- }
- resultData.report("GUIDs");
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import org.eclipse.osee.ats.AtsImage;
+import org.eclipse.osee.framework.jdk.core.util.GUID;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.skynet.results.XResultData;
+
+public class GenerateGuid extends XNavigateItemAction {
+
+ public GenerateGuid(XNavigateItem parent) {
+ super(parent, "Generate Guid", AtsImage.REPORT);
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) throws Exception {
+ XResultData resultData = new XResultData();
+ for (int x = 0; x < 20; x++) {
+ resultData.log(GUID.create());
+ }
+ resultData.report("GUIDs");
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateReviewParticipationReport.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateReviewParticipationReport.java
index fa6ee755330..9b209257a12 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateReviewParticipationReport.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GenerateReviewParticipationReport.java
@@ -1,116 +1,116 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.util.Collection;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.osee.ats.AtsImage;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.xviewer.column.XViewerReviewRoleColumn;
-import org.eclipse.osee.ats.util.xviewer.column.XViewerSmaCompletedDateColumn;
-import org.eclipse.osee.ats.util.xviewer.column.XViewerSmaStateColumn;
-import org.eclipse.osee.ats.world.WorldXViewerFactory;
-import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem;
-import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem.ReviewState;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.skynet.core.User;
-import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
-import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.skynet.artifact.massEditor.MassArtifactEditor;
-import org.eclipse.osee.framework.ui.skynet.artifact.massEditor.MassArtifactEditorInput;
-import org.eclipse.osee.framework.ui.skynet.widgets.XDate;
-import org.eclipse.osee.framework.ui.skynet.widgets.dialog.UserListDialog;
-import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.SkynetXViewerFactory;
-import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerArtifactNameColumn;
-import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerArtifactTypeColumn;
-import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerGuidColumn;
-import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerHridColumn;
-import org.eclipse.osee.framework.ui.swt.Displays;
-
-/**
- * Donald G. Dunne
- */
-public class GenerateReviewParticipationReport extends XNavigateItemAction {
-
- private static final String MASS_XVIEWER_CUSTOMIZE_NAMESPACE = "org.eclipse.osee.ats.ReviewParticipationReport";
-
- public GenerateReviewParticipationReport(XNavigateItem parent) {
- super(parent, "Generate Review Participation Report", AtsImage.REPORT);
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
- UserListDialog ld = new UserListDialog(Displays.getActiveShell());
- int result = ld.open();
- if (result == 0) {
- if (ld.getResult().length == 0) {
- AWorkbench.popup("ERROR", "Must select user");
- return;
- }
- User selectedUser = ld.getSelection();
- ParticipationReportJob job =
- new ParticipationReportJob("Review Participation Report - " + selectedUser, selectedUser);
- job.setUser(true);
- job.setPriority(Job.LONG);
- job.schedule();
- }
- }
-
- private static class ParticipationReportJob extends Job {
-
- private final User user;
-
- public ParticipationReportJob(String title, User user) {
- super(title);
- this.user = user;
- }
-
- @Override
- public IStatus run(IProgressMonitor monitor) {
- try {
- MyReviewWorkflowItem srch = new MyReviewWorkflowItem("", user, ReviewState.All);
- Collection<Artifact> reviewArts = srch.performSearchGetResults();
- MassArtifactEditorInput input =
- new MassArtifactEditorInput(getName() + " as of " + XDate.getDateNow(), reviewArts,
- new ReviewParticipationXViewerFactory(user));
- MassArtifactEditor.editArtifacts(input);
- } catch (Exception ex) {
- return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
- }
- monitor.done();
- return Status.OK_STATUS;
- }
- }
-
- public static class ReviewParticipationXViewerFactory extends SkynetXViewerFactory {
-
- public ReviewParticipationXViewerFactory(User user) {
- super(MASS_XVIEWER_CUSTOMIZE_NAMESPACE);
- registerColumns(new XViewerArtifactTypeColumn(true));
- registerColumns(new XViewerHridColumn());
- registerColumns(WorldXViewerFactory.Legacy_PCR_Col);
- registerColumns(new XViewerSmaStateColumn());
- registerColumns(new XViewerSmaCompletedDateColumn("Completed"));
- registerColumns(new XViewerReviewRoleColumn(user));
- registerColumns(WorldXViewerFactory.Related_To_State_Col);
- registerColumns(new XViewerArtifactNameColumn(true));
- registerColumns(new XViewerGuidColumn(true));
- registerAllAttributeColumns();
- }
-
- }
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.util.Collection;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.osee.ats.AtsImage;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.xviewer.column.XViewerReviewRoleColumn;
+import org.eclipse.osee.ats.util.xviewer.column.XViewerSmaCompletedDateColumn;
+import org.eclipse.osee.ats.util.xviewer.column.XViewerSmaStateColumn;
+import org.eclipse.osee.ats.world.WorldXViewerFactory;
+import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem;
+import org.eclipse.osee.ats.world.search.MyReviewWorkflowItem.ReviewState;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.skynet.core.User;
+import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
+import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.skynet.artifact.massEditor.MassArtifactEditor;
+import org.eclipse.osee.framework.ui.skynet.artifact.massEditor.MassArtifactEditorInput;
+import org.eclipse.osee.framework.ui.skynet.widgets.XDate;
+import org.eclipse.osee.framework.ui.skynet.widgets.dialog.UserListDialog;
+import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.SkynetXViewerFactory;
+import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerArtifactNameColumn;
+import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerArtifactTypeColumn;
+import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerGuidColumn;
+import org.eclipse.osee.framework.ui.skynet.widgets.xviewer.skynet.column.XViewerHridColumn;
+import org.eclipse.osee.framework.ui.swt.Displays;
+
+/**
+ * Donald G. Dunne
+ */
+public class GenerateReviewParticipationReport extends XNavigateItemAction {
+
+ private static final String MASS_XVIEWER_CUSTOMIZE_NAMESPACE = "org.eclipse.osee.ats.ReviewParticipationReport";
+
+ public GenerateReviewParticipationReport(XNavigateItem parent) {
+ super(parent, "Generate Review Participation Report", AtsImage.REPORT);
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
+ UserListDialog ld = new UserListDialog(Displays.getActiveShell());
+ int result = ld.open();
+ if (result == 0) {
+ if (ld.getResult().length == 0) {
+ AWorkbench.popup("ERROR", "Must select user");
+ return;
+ }
+ User selectedUser = ld.getSelection();
+ ParticipationReportJob job =
+ new ParticipationReportJob("Review Participation Report - " + selectedUser, selectedUser);
+ job.setUser(true);
+ job.setPriority(Job.LONG);
+ job.schedule();
+ }
+ }
+
+ private static class ParticipationReportJob extends Job {
+
+ private final User user;
+
+ public ParticipationReportJob(String title, User user) {
+ super(title);
+ this.user = user;
+ }
+
+ @Override
+ public IStatus run(IProgressMonitor monitor) {
+ try {
+ MyReviewWorkflowItem srch = new MyReviewWorkflowItem("", user, ReviewState.All);
+ Collection<Artifact> reviewArts = srch.performSearchGetResults();
+ MassArtifactEditorInput input =
+ new MassArtifactEditorInput(getName() + " as of " + XDate.getDateNow(), reviewArts,
+ new ReviewParticipationXViewerFactory(user));
+ MassArtifactEditor.editArtifacts(input);
+ } catch (Exception ex) {
+ return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
+ }
+ monitor.done();
+ return Status.OK_STATUS;
+ }
+ }
+
+ public static class ReviewParticipationXViewerFactory extends SkynetXViewerFactory {
+
+ public ReviewParticipationXViewerFactory(User user) {
+ super(MASS_XVIEWER_CUSTOMIZE_NAMESPACE);
+ registerColumns(new XViewerArtifactTypeColumn(true));
+ registerColumns(new XViewerHridColumn());
+ registerColumns(WorldXViewerFactory.Legacy_PCR_Col);
+ registerColumns(new XViewerSmaStateColumn());
+ registerColumns(new XViewerSmaCompletedDateColumn("Completed"));
+ registerColumns(new XViewerReviewRoleColumn(user));
+ registerColumns(WorldXViewerFactory.Related_To_State_Col);
+ registerColumns(new XViewerArtifactNameColumn(true));
+ registerColumns(new XViewerGuidColumn(true));
+ registerAllAttributeColumns();
+ }
+
+ }
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GoalSearchWorkflowSearchItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GoalSearchWorkflowSearchItem.java
index e3d33a84ed9..35bea6bba66 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GoalSearchWorkflowSearchItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/GoalSearchWorkflowSearchItem.java
@@ -1,192 +1,192 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.util.Collection;
-import java.util.logging.Level;
-import org.eclipse.osee.ats.AtsImage;
-import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
-import org.eclipse.osee.ats.artifact.VersionArtifact;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.widgets.XHyperlabelTeamDefinitionSelection;
-import org.eclipse.osee.ats.world.WorldEditor;
-import org.eclipse.osee.ats.world.WorldEditorParameterSearchItem;
-import org.eclipse.osee.ats.world.search.GoalSearchItem;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.jdk.core.util.Strings;
-import org.eclipse.osee.framework.logging.OseeLog;
-import org.eclipse.osee.framework.skynet.core.User;
-import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
-import org.eclipse.osee.framework.ui.plugin.util.Result;
-import org.eclipse.osee.framework.ui.skynet.widgets.XCheckBox;
-import org.eclipse.osee.framework.ui.skynet.widgets.XMembersCombo;
-import org.eclipse.osee.framework.ui.skynet.widgets.XModifiedListener;
-import org.eclipse.osee.framework.ui.skynet.widgets.XWidget;
-import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayout;
-import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayoutData;
-import org.eclipse.osee.framework.ui.skynet.widgets.workflow.IDynamicWidgetLayoutListener;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * @author Donald G. Dunne
- */
-public class GoalSearchWorkflowSearchItem extends WorldEditorParameterSearchItem {
-
- private XHyperlabelTeamDefinitionSelection teamCombo = null;
- private XMembersCombo assigneeCombo;
- private XCheckBox includeCompletedCancelledCheckbox;
-
- public GoalSearchWorkflowSearchItem(String name) {
- super(name, AtsImage.GOAL);
- }
-
- public GoalSearchWorkflowSearchItem() {
- this("Goal Search");
- }
-
- public GoalSearchWorkflowSearchItem(GoalSearchWorkflowSearchItem goalWorkflowSearchItem) {
- super(goalWorkflowSearchItem, AtsImage.GOAL);
- }
-
- @Override
- public GoalSearchWorkflowSearchItem copy() {
- return new GoalSearchWorkflowSearchItem(this);
- }
-
- @Override
- public GoalSearchWorkflowSearchItem copyProvider() {
- return new GoalSearchWorkflowSearchItem(this);
- }
-
- @Override
- public String getParameterXWidgetXml() {
- return "<xWidgets>" +
- //
- "<XWidget xwidgetType=\"XHyperlabelTeamDefinitionSelection\" displayName=\"Team Definitions(s)\" horizontalLabel=\"true\"/>" +
- //
- "<XWidget xwidgetType=\"XMembersCombo\" displayName=\"Assignee\" horizontalLabel=\"true\"/>" +
- //
- "<XWidget xwidgetType=\"XCheckBox\" displayName=\"Include Completed/Cancelled\" defaultValue=\"false\" labelAfter=\"true\" horizontalLabel=\"true\"/>" +
- //
- "</xWidgets>";
- }
-
- @Override
- public Collection<? extends Artifact> performSearchGetResults(SearchType searchType) throws OseeCoreException {
- return new GoalSearchItem("", getSelectedTeamDefinitions(), isIncludeCompletedCancelledCheckbox(),
- getSelectedUser()).performSearchGetResults(false);
- }
-
- @Override
- public String getSelectedName(SearchType searchType) {
- StringBuffer sb = new StringBuffer();
- Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
- if (teamDefs.size() > 0) {
- sb.append(" - Teams: " + org.eclipse.osee.framework.jdk.core.util.Collections.toString(",", teamDefs));
- }
- if (getSelectedUser() != null) {
- sb.append(" - Assignee: " + getSelectedUser());
- }
- if (isIncludeCompletedCancelledCheckbox()) {
- sb.append(" - Include Completed/Cancelled");
- }
- return Strings.truncate("Goals" + sb.toString(), WorldEditor.TITLE_MAX_LENGTH, true);
- }
-
- @Override
- public void widgetCreated(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) {
- if (widget.getLabel().equals("Assignee")) {
- assigneeCombo = (XMembersCombo) widget;
- }
- if (widget.getLabel().equals("Include Completed/Cancelled")) {
- includeCompletedCancelledCheckbox = (XCheckBox) widget;
- }
- if (widget.getLabel().equals("Team Definitions(s)")) {
- teamCombo = (XHyperlabelTeamDefinitionSelection) widget;
- }
- }
-
- private User getSelectedUser() {
- if (assigneeCombo == null) {
- return null;
- }
- return assigneeCombo.getUser();
- }
-
- public void setSelectedUser(User user) {
- if (assigneeCombo != null) {
- assigneeCombo.set(user);
- }
- }
-
- private boolean isIncludeCompletedCancelledCheckbox() {
- if (includeCompletedCancelledCheckbox == null) {
- return false;
- }
- return includeCompletedCancelledCheckbox.isSelected();
- }
-
- public void includeCompletedCancelledCheckbox(boolean selected) {
- if (includeCompletedCancelledCheckbox != null) {
- includeCompletedCancelledCheckbox.set(selected);
- }
- }
-
- public Collection<TeamDefinitionArtifact> getSelectedTeamDefinitions() {
- if (teamCombo == null) {
- return java.util.Collections.emptyList();
- }
- return teamCombo.getSelectedTeamDefintions();
- }
-
- public void setSelectedTeamDefinitions(Collection<TeamDefinitionArtifact> selectedTeamDefs) {
- if (teamCombo != null) {
- teamCombo.setSelectedTeamDefs(selectedTeamDefs);
- teamCombo.notifyXModifiedListeners();
- }
- }
-
- @Override
- public void createXWidgetLayoutData(DynamicXWidgetLayoutData layoutData, XWidget widget, FormToolkit toolkit, Artifact art, XModifiedListener modListener, boolean isEditable) {
- // do nothing
- }
-
- @Override
- public void widgetCreating(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) {
- // do nothing
- }
-
- @Override
- public Result isParameterSelectionValid() {
- try {
- User user = getSelectedUser();
- boolean includeCompleted = isIncludeCompletedCancelledCheckbox();
- if (user != null && includeCompleted) {
- return new Result("Assignee and Include Completed are not compatible selections.");
- }
- return Result.TrueResult;
- } catch (Exception ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
- return new Result("Exception: " + ex.getLocalizedMessage());
- }
- }
-
- @Override
- public IDynamicWidgetLayoutListener getDynamicWidgetLayoutListener() {
- return null;
- }
-
- @Override
- public VersionArtifact getTargetedVersionArtifact() {
- return null;
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.util.Collection;
+import java.util.logging.Level;
+import org.eclipse.osee.ats.AtsImage;
+import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
+import org.eclipse.osee.ats.artifact.VersionArtifact;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.widgets.XHyperlabelTeamDefinitionSelection;
+import org.eclipse.osee.ats.world.WorldEditor;
+import org.eclipse.osee.ats.world.WorldEditorParameterSearchItem;
+import org.eclipse.osee.ats.world.search.GoalSearchItem;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.jdk.core.util.Strings;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.User;
+import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
+import org.eclipse.osee.framework.ui.plugin.util.Result;
+import org.eclipse.osee.framework.ui.skynet.widgets.XCheckBox;
+import org.eclipse.osee.framework.ui.skynet.widgets.XMembersCombo;
+import org.eclipse.osee.framework.ui.skynet.widgets.XModifiedListener;
+import org.eclipse.osee.framework.ui.skynet.widgets.XWidget;
+import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayout;
+import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayoutData;
+import org.eclipse.osee.framework.ui.skynet.widgets.workflow.IDynamicWidgetLayoutListener;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class GoalSearchWorkflowSearchItem extends WorldEditorParameterSearchItem {
+
+ private XHyperlabelTeamDefinitionSelection teamCombo = null;
+ private XMembersCombo assigneeCombo;
+ private XCheckBox includeCompletedCancelledCheckbox;
+
+ public GoalSearchWorkflowSearchItem(String name) {
+ super(name, AtsImage.GOAL);
+ }
+
+ public GoalSearchWorkflowSearchItem() {
+ this("Goal Search");
+ }
+
+ public GoalSearchWorkflowSearchItem(GoalSearchWorkflowSearchItem goalWorkflowSearchItem) {
+ super(goalWorkflowSearchItem, AtsImage.GOAL);
+ }
+
+ @Override
+ public GoalSearchWorkflowSearchItem copy() {
+ return new GoalSearchWorkflowSearchItem(this);
+ }
+
+ @Override
+ public GoalSearchWorkflowSearchItem copyProvider() {
+ return new GoalSearchWorkflowSearchItem(this);
+ }
+
+ @Override
+ public String getParameterXWidgetXml() {
+ return "<xWidgets>" +
+ //
+ "<XWidget xwidgetType=\"XHyperlabelTeamDefinitionSelection\" displayName=\"Team Definitions(s)\" horizontalLabel=\"true\"/>" +
+ //
+ "<XWidget xwidgetType=\"XMembersCombo\" displayName=\"Assignee\" horizontalLabel=\"true\"/>" +
+ //
+ "<XWidget xwidgetType=\"XCheckBox\" displayName=\"Include Completed/Cancelled\" defaultValue=\"false\" labelAfter=\"true\" horizontalLabel=\"true\"/>" +
+ //
+ "</xWidgets>";
+ }
+
+ @Override
+ public Collection<? extends Artifact> performSearchGetResults(SearchType searchType) throws OseeCoreException {
+ return new GoalSearchItem("", getSelectedTeamDefinitions(), isIncludeCompletedCancelledCheckbox(),
+ getSelectedUser()).performSearchGetResults(false);
+ }
+
+ @Override
+ public String getSelectedName(SearchType searchType) {
+ StringBuffer sb = new StringBuffer();
+ Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
+ if (teamDefs.size() > 0) {
+ sb.append(" - Teams: " + org.eclipse.osee.framework.jdk.core.util.Collections.toString(",", teamDefs));
+ }
+ if (getSelectedUser() != null) {
+ sb.append(" - Assignee: " + getSelectedUser());
+ }
+ if (isIncludeCompletedCancelledCheckbox()) {
+ sb.append(" - Include Completed/Cancelled");
+ }
+ return Strings.truncate("Goals" + sb.toString(), WorldEditor.TITLE_MAX_LENGTH, true);
+ }
+
+ @Override
+ public void widgetCreated(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) {
+ if (widget.getLabel().equals("Assignee")) {
+ assigneeCombo = (XMembersCombo) widget;
+ }
+ if (widget.getLabel().equals("Include Completed/Cancelled")) {
+ includeCompletedCancelledCheckbox = (XCheckBox) widget;
+ }
+ if (widget.getLabel().equals("Team Definitions(s)")) {
+ teamCombo = (XHyperlabelTeamDefinitionSelection) widget;
+ }
+ }
+
+ private User getSelectedUser() {
+ if (assigneeCombo == null) {
+ return null;
+ }
+ return assigneeCombo.getUser();
+ }
+
+ public void setSelectedUser(User user) {
+ if (assigneeCombo != null) {
+ assigneeCombo.set(user);
+ }
+ }
+
+ private boolean isIncludeCompletedCancelledCheckbox() {
+ if (includeCompletedCancelledCheckbox == null) {
+ return false;
+ }
+ return includeCompletedCancelledCheckbox.isSelected();
+ }
+
+ public void includeCompletedCancelledCheckbox(boolean selected) {
+ if (includeCompletedCancelledCheckbox != null) {
+ includeCompletedCancelledCheckbox.set(selected);
+ }
+ }
+
+ public Collection<TeamDefinitionArtifact> getSelectedTeamDefinitions() {
+ if (teamCombo == null) {
+ return java.util.Collections.emptyList();
+ }
+ return teamCombo.getSelectedTeamDefintions();
+ }
+
+ public void setSelectedTeamDefinitions(Collection<TeamDefinitionArtifact> selectedTeamDefs) {
+ if (teamCombo != null) {
+ teamCombo.setSelectedTeamDefs(selectedTeamDefs);
+ teamCombo.notifyXModifiedListeners();
+ }
+ }
+
+ @Override
+ public void createXWidgetLayoutData(DynamicXWidgetLayoutData layoutData, XWidget widget, FormToolkit toolkit, Artifact art, XModifiedListener modListener, boolean isEditable) {
+ // do nothing
+ }
+
+ @Override
+ public void widgetCreating(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) {
+ // do nothing
+ }
+
+ @Override
+ public Result isParameterSelectionValid() {
+ try {
+ User user = getSelectedUser();
+ boolean includeCompleted = isIncludeCompletedCancelledCheckbox();
+ if (user != null && includeCompleted) {
+ return new Result("Assignee and Include Completed are not compatible selections.");
+ }
+ return Result.TrueResult;
+ } catch (Exception ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
+ return new Result("Exception: " + ex.getLocalizedMessage());
+ }
+ }
+
+ @Override
+ public IDynamicWidgetLayoutListener getDynamicWidgetLayoutListener() {
+ return null;
+ }
+
+ @Override
+ public VersionArtifact getTargetedVersionArtifact() {
+ return null;
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ImportActionsViaSpreadsheet.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ImportActionsViaSpreadsheet.java
index c6257009a29..584140bf9ed 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ImportActionsViaSpreadsheet.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ImportActionsViaSpreadsheet.java
@@ -25,9 +25,6 @@ public class ImportActionsViaSpreadsheet extends XNavigateItemAction {
public static String strs[] = new String[] {};
- /**
- * @param parent
- */
public ImportActionsViaSpreadsheet(XNavigateItem parent) {
super(parent, "Import Actions Via Spreadsheet", FrameworkImage.IMPORT);
}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java
index 7f29dab8591..970efdd09c3 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NavigateView.java
@@ -1,304 +1,304 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.logging.Level;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IExtensionRegistry;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IRegistryEventListener;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.jobs.JobChangeAdapter;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.osee.ats.actions.MyFavoritesAction;
-import org.eclipse.osee.ats.actions.MyWorldAction;
-import org.eclipse.osee.ats.actions.NewAction;
-import org.eclipse.osee.ats.actions.NewGoal;
-import org.eclipse.osee.ats.actions.OpenChangeReportByIdAction;
-import org.eclipse.osee.ats.actions.OpenWorkflowByIdAction;
-import org.eclipse.osee.ats.actions.OpenWorldByIdAction;
-import org.eclipse.osee.ats.config.AtsBulkLoad;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.AtsUtil;
-import org.eclipse.osee.framework.core.client.ClientSessionManager;
-import org.eclipse.osee.framework.core.operation.CompositeOperation;
-import org.eclipse.osee.framework.core.operation.IOperation;
-import org.eclipse.osee.framework.core.operation.Operations;
-import org.eclipse.osee.framework.logging.OseeLog;
-import org.eclipse.osee.framework.plugin.core.IActionable;
-import org.eclipse.osee.framework.skynet.core.UserManager;
-import org.eclipse.osee.framework.ui.plugin.OseeUiActions;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.skynet.OseeContributionItem;
-import org.eclipse.osee.framework.ui.skynet.action.CollapseAllAction;
-import org.eclipse.osee.framework.ui.skynet.action.ExpandAllAction;
-import org.eclipse.osee.framework.ui.skynet.notify.OseeNotificationManager;
-import org.eclipse.osee.framework.ui.skynet.util.DbConnectionExceptionComposite;
-import org.eclipse.osee.framework.ui.skynet.util.LoadingComposite;
-import org.eclipse.osee.framework.ui.swt.Displays;
-import org.eclipse.osee.framework.ui.swt.Widgets;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.ViewPart;
-import org.eclipse.ui.progress.UIJob;
-
-/**
- * @author Donald G. Dunne
- */
-public class NavigateView extends ViewPart implements IActionable {
-
- public static final String VIEW_ID = "org.eclipse.osee.ats.navigate.NavigateView";
- public static final String HELP_CONTEXT_ID = "atsNavigator";
- private AtsNavigateComposite xNavComp;
- private final boolean includeCompleteCancelled = false;
- private Composite parent;
- private LoadingComposite loadingComposite;
-
- @Override
- public void createPartControl(Composite parent) {
- this.parent = parent;
- loadingComposite = new LoadingComposite(parent);
- refreshData();
- }
-
- public void refreshData() {
- List<IOperation> ops = new ArrayList<IOperation>();
- ops.add(AtsBulkLoad.getConfigLoadingOperation());
- ops.add(new AtsNavigateViewItemsOperation());
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.logging.Level;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IRegistryEventListener;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.IJobChangeEvent;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.core.runtime.jobs.JobChangeAdapter;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.osee.ats.actions.MyFavoritesAction;
+import org.eclipse.osee.ats.actions.MyWorldAction;
+import org.eclipse.osee.ats.actions.NewAction;
+import org.eclipse.osee.ats.actions.NewGoal;
+import org.eclipse.osee.ats.actions.OpenChangeReportByIdAction;
+import org.eclipse.osee.ats.actions.OpenWorkflowByIdAction;
+import org.eclipse.osee.ats.actions.OpenWorldByIdAction;
+import org.eclipse.osee.ats.config.AtsBulkLoad;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.AtsUtil;
+import org.eclipse.osee.framework.core.client.ClientSessionManager;
+import org.eclipse.osee.framework.core.operation.CompositeOperation;
+import org.eclipse.osee.framework.core.operation.IOperation;
+import org.eclipse.osee.framework.core.operation.Operations;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.plugin.core.IActionable;
+import org.eclipse.osee.framework.skynet.core.UserManager;
+import org.eclipse.osee.framework.ui.plugin.OseeUiActions;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.skynet.OseeContributionItem;
+import org.eclipse.osee.framework.ui.skynet.action.CollapseAllAction;
+import org.eclipse.osee.framework.ui.skynet.action.ExpandAllAction;
+import org.eclipse.osee.framework.ui.skynet.notify.OseeNotificationManager;
+import org.eclipse.osee.framework.ui.skynet.util.DbConnectionExceptionComposite;
+import org.eclipse.osee.framework.ui.skynet.util.LoadingComposite;
+import org.eclipse.osee.framework.ui.swt.Displays;
+import org.eclipse.osee.framework.ui.swt.Widgets;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IMemento;
+import org.eclipse.ui.IViewSite;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.part.ViewPart;
+import org.eclipse.ui.progress.UIJob;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class NavigateView extends ViewPart implements IActionable {
+
+ public static final String VIEW_ID = "org.eclipse.osee.ats.navigate.NavigateView";
+ public static final String HELP_CONTEXT_ID = "atsNavigator";
+ private AtsNavigateComposite xNavComp;
+ private final boolean includeCompleteCancelled = false;
+ private Composite parent;
+ private LoadingComposite loadingComposite;
+
+ @Override
+ public void createPartControl(Composite parent) {
+ this.parent = parent;
+ loadingComposite = new LoadingComposite(parent);
+ refreshData();
+ }
+
+ public void refreshData() {
+ List<IOperation> ops = new ArrayList<IOperation>();
+ ops.add(AtsBulkLoad.getConfigLoadingOperation());
+ ops.add(new AtsNavigateViewItemsOperation());
IOperation operation = new CompositeOperation("Load ATS Navigator", AtsPlugin.PLUGIN_ID, ops);
- Operations.executeAsJob(operation, false, Job.LONG, new ReloadJobChangeAdapter(this));
- }
-
- private final class ReloadJobChangeAdapter extends JobChangeAdapter {
-
- private final NavigateView navView;
-
- private ReloadJobChangeAdapter(NavigateView navView) {
- this.navView = navView;
- }
-
- @Override
- public void scheduled(IJobChangeEvent event) {
- super.scheduled(event);
- }
-
- @Override
- public void aboutToRun(IJobChangeEvent event) {
- super.aboutToRun(event);
- }
-
- @Override
- public void done(IJobChangeEvent event) {
- super.done(event);
- Job job = new UIJob("Load ATS Navigator") {
-
- @Override
- public IStatus runInUIThread(IProgressMonitor monitor) {
- try {
- showBusy(false);
- if (!DbConnectionExceptionComposite.dbConnectionIsOk(parent)) {
- return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, "Navigate View - !dbConnectionIsOk");
- }
-
- if (Widgets.isAccessible(loadingComposite)) {
- loadingComposite.dispose();
- }
- xNavComp = new AtsNavigateComposite(AtsNavigateViewItems.getInstance(), parent, SWT.NONE);
-
- AtsPlugin.getInstance().setHelp(xNavComp, HELP_CONTEXT_ID, "org.eclipse.osee.ats.help.ui");
- createToolBar();
-
- // add search text box
- AtsQuickSearchComposite composite = new AtsQuickSearchComposite(xNavComp, SWT.NONE);
- composite.addDisposeListener(new DisposeListener() {
-
- @Override
- public void widgetDisposed(DisposeEvent e) {
- OseeNotificationManager.getInstance().sendNotifications();
- }
- });
-
- if (savedFilterStr != null) {
- xNavComp.getFilteredTree().getFilterControl().setText(savedFilterStr);
- }
- xNavComp.refresh();
- xNavComp.getFilteredTree().getFilterControl().setFocus();
-
- Label label = new Label(xNavComp, SWT.None);
- String str = getWhoAmI();
- if (AtsUtil.isAtsAdmin()) {
- str += " - Admin";
- }
- if (!str.equals("")) {
- if (AtsUtil.isAtsAdmin()) {
- label.setForeground(Displays.getSystemColor(SWT.COLOR_RED));
- } else {
- label.setForeground(Displays.getSystemColor(SWT.COLOR_BLUE));
- }
- }
- label.setText(str);
- label.setToolTipText(str);
- GridData gridData = new GridData(GridData.HORIZONTAL_ALIGN_CENTER | GridData.VERTICAL_ALIGN_CENTER);
- gridData.heightHint = 15;
- label.setLayoutData(gridData);
-
- OseeContributionItem.addTo(navView, false);
- xNavComp.layout();
-
- addExtensionPointListenerBecauseOfWorkspaceLoading();
-
- } catch (Exception ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
- }
- return Status.OK_STATUS;
- }
- };
- Operations.scheduleJob(job, false, Job.SHORT, null);
- }
- }
-
- private void addExtensionPointListenerBecauseOfWorkspaceLoading() {
- IExtensionRegistry extensionRegistry = Platform.getExtensionRegistry();
- extensionRegistry.addListener(new IRegistryEventListener() {
- @Override
- public void added(IExtension[] extensions) {
- xNavComp.refresh();
- }
-
- @Override
- public void added(IExtensionPoint[] extensionPoints) {
- xNavComp.refresh();
- }
-
- @Override
- public void removed(IExtension[] extensions) {
- xNavComp.refresh();
- }
-
- @Override
- public void removed(IExtensionPoint[] extensionPoints) {
- xNavComp.refresh();
- }
- }, "org.eclipse.osee.framework.ui.skynet.BlamOperation");
- }
-
- public boolean isIncludeCompleteCancelled() {
- return includeCompleteCancelled;
- }
-
- private String getWhoAmI() {
- try {
- String userName = UserManager.getUser().getName();
- return String.format("%s - %s:%s", userName, ClientSessionManager.getDataStoreName(),
- ClientSessionManager.getDataStoreLoginName());
- } catch (Exception ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
- return "Exception: " + ex.getLocalizedMessage();
- }
- }
-
- protected void createToolBar() {
- IToolBarManager toolbarManager = getViewSite().getActionBars().getToolBarManager();
- toolbarManager.add(new MyWorldAction());
- toolbarManager.add(new MyFavoritesAction());
- toolbarManager.add(new CollapseAllAction(xNavComp.getFilteredTree().getViewer()));
- toolbarManager.add(new ExpandAllAction(xNavComp.getFilteredTree().getViewer()));
- toolbarManager.add(new OpenChangeReportByIdAction());
- toolbarManager.add(new OpenWorldByIdAction());
- toolbarManager.add(new OpenWorkflowByIdAction());
- toolbarManager.add(new NewAction());
- getViewSite().getActionBars().updateActionBars();
-
- IActionBars bars = getViewSite().getActionBars();
- IMenuManager mm = bars.getMenuManager();
- mm.add(new NewAction());
- mm.add(new NewGoal());
- mm.add(OseeUiActions.createBugAction(AtsPlugin.getInstance(), this, VIEW_ID, "ATS Navigator"));
-
- toolbarManager.update(true);
- }
-
- public static NavigateView getNavigateView() {
- IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
- try {
- return (NavigateView) page.showView(NavigateView.VIEW_ID);
- } catch (PartInitException e1) {
- MessageDialog.openInformation(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), "Launch Error",
- "Couldn't Launch OSEE ATS NavigateView " + e1.getMessage());
- }
- return null;
- }
-
- @Override
- public String getActionDescription() {
- IStructuredSelection sel = (IStructuredSelection) xNavComp.getFilteredTree().getViewer().getSelection();
- if (sel.iterator().hasNext()) {
- return String.format("Currently Selected - %s", ((XNavigateItem) sel.iterator().next()).getName());
- }
- return "";
- }
-
- private static final String INPUT = "filter";
- private static final String FILTER_STR = "filterStr";
-
- @Override
- public void saveState(IMemento memento) {
- super.saveState(memento);
- memento = memento.createChild(INPUT);
-
- if (xNavComp != null && xNavComp.getFilteredTree().getFilterControl() != null && !xNavComp.getFilteredTree().isDisposed()) {
- String filterStr = xNavComp.getFilteredTree().getFilterControl().getText();
- memento.putString(FILTER_STR, filterStr);
- }
- }
- private String savedFilterStr = null;
-
- @Override
- public void init(IViewSite site, IMemento memento) throws PartInitException {
- super.init(site, memento);
- try {
- if (memento != null) {
- memento = memento.getChild(INPUT);
- if (memento != null) {
- savedFilterStr = memento.getString(FILTER_STR);
- }
- }
- } catch (Exception ex) {
+ Operations.executeAsJob(operation, false, Job.LONG, new ReloadJobChangeAdapter(this));
+ }
+
+ private final class ReloadJobChangeAdapter extends JobChangeAdapter {
+
+ private final NavigateView navView;
+
+ private ReloadJobChangeAdapter(NavigateView navView) {
+ this.navView = navView;
+ }
+
+ @Override
+ public void scheduled(IJobChangeEvent event) {
+ super.scheduled(event);
+ }
+
+ @Override
+ public void aboutToRun(IJobChangeEvent event) {
+ super.aboutToRun(event);
+ }
+
+ @Override
+ public void done(IJobChangeEvent event) {
+ super.done(event);
+ Job job = new UIJob("Load ATS Navigator") {
+
+ @Override
+ public IStatus runInUIThread(IProgressMonitor monitor) {
+ try {
+ showBusy(false);
+ if (!DbConnectionExceptionComposite.dbConnectionIsOk(parent)) {
+ return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, "Navigate View - !dbConnectionIsOk");
+ }
+
+ if (Widgets.isAccessible(loadingComposite)) {
+ loadingComposite.dispose();
+ }
+ xNavComp = new AtsNavigateComposite(AtsNavigateViewItems.getInstance(), parent, SWT.NONE);
+
+ AtsPlugin.getInstance().setHelp(xNavComp, HELP_CONTEXT_ID, "org.eclipse.osee.ats.help.ui");
+ createToolBar();
+
+ // add search text box
+ AtsQuickSearchComposite composite = new AtsQuickSearchComposite(xNavComp, SWT.NONE);
+ composite.addDisposeListener(new DisposeListener() {
+
+ @Override
+ public void widgetDisposed(DisposeEvent e) {
+ OseeNotificationManager.getInstance().sendNotifications();
+ }
+ });
+
+ if (savedFilterStr != null) {
+ xNavComp.getFilteredTree().getFilterControl().setText(savedFilterStr);
+ }
+ xNavComp.refresh();
+ xNavComp.getFilteredTree().getFilterControl().setFocus();
+
+ Label label = new Label(xNavComp, SWT.None);
+ String str = getWhoAmI();
+ if (AtsUtil.isAtsAdmin()) {
+ str += " - Admin";
+ }
+ if (!str.equals("")) {
+ if (AtsUtil.isAtsAdmin()) {
+ label.setForeground(Displays.getSystemColor(SWT.COLOR_RED));
+ } else {
+ label.setForeground(Displays.getSystemColor(SWT.COLOR_BLUE));
+ }
+ }
+ label.setText(str);
+ label.setToolTipText(str);
+ GridData gridData = new GridData(GridData.HORIZONTAL_ALIGN_CENTER | GridData.VERTICAL_ALIGN_CENTER);
+ gridData.heightHint = 15;
+ label.setLayoutData(gridData);
+
+ OseeContributionItem.addTo(navView, false);
+ xNavComp.layout();
+
+ addExtensionPointListenerBecauseOfWorkspaceLoading();
+
+ } catch (Exception ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
+ }
+ return Status.OK_STATUS;
+ }
+ };
+ Operations.scheduleJob(job, false, Job.SHORT, null);
+ }
+ }
+
+ private void addExtensionPointListenerBecauseOfWorkspaceLoading() {
+ IExtensionRegistry extensionRegistry = Platform.getExtensionRegistry();
+ extensionRegistry.addListener(new IRegistryEventListener() {
+ @Override
+ public void added(IExtension[] extensions) {
+ xNavComp.refresh();
+ }
+
+ @Override
+ public void added(IExtensionPoint[] extensionPoints) {
+ xNavComp.refresh();
+ }
+
+ @Override
+ public void removed(IExtension[] extensions) {
+ xNavComp.refresh();
+ }
+
+ @Override
+ public void removed(IExtensionPoint[] extensionPoints) {
+ xNavComp.refresh();
+ }
+ }, "org.eclipse.osee.framework.ui.skynet.BlamOperation");
+ }
+
+ public boolean isIncludeCompleteCancelled() {
+ return includeCompleteCancelled;
+ }
+
+ private String getWhoAmI() {
+ try {
+ String userName = UserManager.getUser().getName();
+ return String.format("%s - %s:%s", userName, ClientSessionManager.getDataStoreName(),
+ ClientSessionManager.getDataStoreLoginName());
+ } catch (Exception ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
+ return "Exception: " + ex.getLocalizedMessage();
+ }
+ }
+
+ protected void createToolBar() {
+ IToolBarManager toolbarManager = getViewSite().getActionBars().getToolBarManager();
+ toolbarManager.add(new MyWorldAction());
+ toolbarManager.add(new MyFavoritesAction());
+ toolbarManager.add(new CollapseAllAction(xNavComp.getFilteredTree().getViewer()));
+ toolbarManager.add(new ExpandAllAction(xNavComp.getFilteredTree().getViewer()));
+ toolbarManager.add(new OpenChangeReportByIdAction());
+ toolbarManager.add(new OpenWorldByIdAction());
+ toolbarManager.add(new OpenWorkflowByIdAction());
+ toolbarManager.add(new NewAction());
+ getViewSite().getActionBars().updateActionBars();
+
+ IActionBars bars = getViewSite().getActionBars();
+ IMenuManager mm = bars.getMenuManager();
+ mm.add(new NewAction());
+ mm.add(new NewGoal());
+ mm.add(OseeUiActions.createBugAction(AtsPlugin.getInstance(), this, VIEW_ID, "ATS Navigator"));
+
+ toolbarManager.update(true);
+ }
+
+ public static NavigateView getNavigateView() {
+ IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
+ try {
+ return (NavigateView) page.showView(NavigateView.VIEW_ID);
+ } catch (PartInitException e1) {
+ MessageDialog.openInformation(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), "Launch Error",
+ "Couldn't Launch OSEE ATS NavigateView " + e1.getMessage());
+ }
+ return null;
+ }
+
+ @Override
+ public String getActionDescription() {
+ IStructuredSelection sel = (IStructuredSelection) xNavComp.getFilteredTree().getViewer().getSelection();
+ if (sel.iterator().hasNext()) {
+ return String.format("Currently Selected - %s", ((XNavigateItem) sel.iterator().next()).getName());
+ }
+ return "";
+ }
+
+ private static final String INPUT = "filter";
+ private static final String FILTER_STR = "filterStr";
+
+ @Override
+ public void saveState(IMemento memento) {
+ super.saveState(memento);
+ memento = memento.createChild(INPUT);
+
+ if (xNavComp != null && xNavComp.getFilteredTree().getFilterControl() != null && !xNavComp.getFilteredTree().isDisposed()) {
+ String filterStr = xNavComp.getFilteredTree().getFilterControl().getText();
+ memento.putString(FILTER_STR, filterStr);
+ }
+ }
+ private String savedFilterStr = null;
+
+ @Override
+ public void init(IViewSite site, IMemento memento) throws PartInitException {
+ super.init(site, memento);
+ try {
+ if (memento != null) {
+ memento = memento.getChild(INPUT);
+ if (memento != null) {
+ savedFilterStr = memento.getString(FILTER_STR);
+ }
+ }
+ } catch (Exception ex) {
OseeLog.log(AtsPlugin.class, Level.WARNING, "NavigateView error on init", ex);
- }
- }
-
- @Override
- public void setFocus() {
- // do nothing
- }
-
+ }
+ }
+
+ @Override
+ public void setFocus() {
+ // do nothing
+ }
+
} \ No newline at end of file
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NewPeerToPeerReviewItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NewPeerToPeerReviewItem.java
index 51e43089fb7..67458917ddc 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NewPeerToPeerReviewItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/NewPeerToPeerReviewItem.java
@@ -34,9 +34,6 @@ import org.eclipse.osee.framework.ui.skynet.widgets.dialog.EntryDialog;
*/
public class NewPeerToPeerReviewItem extends XNavigateItemAction {
- /**
- * @param parent
- */
public NewPeerToPeerReviewItem(XNavigateItem parent) {
super(parent, "New Stand-alone Peer To Peer Review", AtsImage.REVIEW);
}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/PublishFullVersionReportItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/PublishFullVersionReportItem.java
index 3ded2b6fa3b..8f2d079dcac 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/PublishFullVersionReportItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/PublishFullVersionReportItem.java
@@ -1,134 +1,134 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.io.File;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
-import org.eclipse.osee.ats.config.AtsCacheManager;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.AtsArtifactTypes;
-import org.eclipse.osee.ats.util.VersionReportJob;
-import org.eclipse.osee.ats.util.widgets.dialog.TeamDefinitionDialog;
-import org.eclipse.osee.framework.core.enums.Active;
-import org.eclipse.osee.framework.core.exception.ArtifactDoesNotExist;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.jdk.core.util.Lib;
-import org.eclipse.osee.framework.skynet.core.artifact.ArtifactTypeManager;
-import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
-import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
-import org.eclipse.osee.framework.ui.swt.Displays;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.program.Program;
-import org.eclipse.swt.widgets.FileDialog;
-
-/**
- * @author Donald G. Dunne
- */
-public class PublishFullVersionReportItem extends XNavigateItemAction {
-
- private final TeamDefinitionArtifact teamDef;
- private final String publishToFilename;
- private final String teamDefName;
-
- public PublishFullVersionReportItem(XNavigateItem parent, String name, TeamDefinitionArtifact teamDef, String publishToFilename) {
- super(parent, name);
- this.teamDef = teamDef;
- this.teamDefName = null;
- this.publishToFilename = publishToFilename;
- }
-
- public PublishFullVersionReportItem(XNavigateItem parent, String name, String teamDefName, String publishToFilename) {
- super(parent, name);
- this.teamDefName = teamDefName;
- this.teamDef = null;
- this.publishToFilename = publishToFilename;
- }
-
- public PublishFullVersionReportItem(XNavigateItem parent) {
- this(parent, "Publish Full Version Report", (String) null, null);
- }
-
- @Override
- public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
- String usePublishToFilename = publishToFilename;
- if (usePublishToFilename == null) {
- final FileDialog dialog = new FileDialog(Displays.getActiveShell().getShell(), SWT.SAVE);
- dialog.setFilterExtensions(new String[] {"*.html"});
- usePublishToFilename = dialog.open();
- if (usePublishToFilename == null) {
- return;
- }
- }
- TeamDefinitionArtifact useTeamDef = teamDef;
- if (useTeamDef == null && teamDefName != null) {
- try {
- useTeamDef =
- (TeamDefinitionArtifact) AtsCacheManager.getSoleArtifactByName(
- ArtifactTypeManager.getType(AtsArtifactTypes.TeamDefinition), teamDefName);
- } catch (ArtifactDoesNotExist ex) {
- // do nothing, going to get team below
- }
- }
- if (useTeamDef == null) {
- TeamDefinitionDialog ld = new TeamDefinitionDialog("Select Team", "Select Team");
- ld.setInput(TeamDefinitionArtifact.getTeamDefinitions(Active.Both));
- int result = ld.open();
- if (result == 0) {
- useTeamDef = (TeamDefinitionArtifact) ld.getResult()[0];
- } else {
- return;
- }
- } else if (!MessageDialog.openConfirm(Displays.getActiveShell(), getName(), getName())) {
- return;
- }
-
- String title = useTeamDef.getName() + " Version Report";
- PublishReportJob job = new PublishReportJob(title, teamDef, usePublishToFilename);
- job.setUser(true);
- job.setPriority(Job.LONG);
- job.schedule();
- }
-
- private static class PublishReportJob extends Job {
-
- private final TeamDefinitionArtifact teamDef;
- private final String filename;
-
- public PublishReportJob(String title, TeamDefinitionArtifact teamDef, String filename) {
- super(title);
- this.teamDef = teamDef;
- this.filename = filename;
- }
-
- @Override
- public IStatus run(IProgressMonitor monitor) {
- try {
- String html = VersionReportJob.getFullReleaseReport(teamDef, monitor);
- Lib.writeStringToFile(html, new File(filename));
- Program.launch(filename);
- AWorkbench.popup("Publish Complete", "Data Published To \"" + filename + "\"");
- } catch (Exception ex) {
- return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
- }
-
- monitor.done();
- return Status.OK_STATUS;
- }
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.io.File;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
+import org.eclipse.osee.ats.config.AtsCacheManager;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.AtsArtifactTypes;
+import org.eclipse.osee.ats.util.VersionReportJob;
+import org.eclipse.osee.ats.util.widgets.dialog.TeamDefinitionDialog;
+import org.eclipse.osee.framework.core.enums.Active;
+import org.eclipse.osee.framework.core.exception.ArtifactDoesNotExist;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.jdk.core.util.Lib;
+import org.eclipse.osee.framework.skynet.core.artifact.ArtifactTypeManager;
+import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateComposite.TableLoadOption;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItem;
+import org.eclipse.osee.framework.ui.plugin.xnavigate.XNavigateItemAction;
+import org.eclipse.osee.framework.ui.swt.Displays;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.program.Program;
+import org.eclipse.swt.widgets.FileDialog;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class PublishFullVersionReportItem extends XNavigateItemAction {
+
+ private final TeamDefinitionArtifact teamDef;
+ private final String publishToFilename;
+ private final String teamDefName;
+
+ public PublishFullVersionReportItem(XNavigateItem parent, String name, TeamDefinitionArtifact teamDef, String publishToFilename) {
+ super(parent, name);
+ this.teamDef = teamDef;
+ this.teamDefName = null;
+ this.publishToFilename = publishToFilename;
+ }
+
+ public PublishFullVersionReportItem(XNavigateItem parent, String name, String teamDefName, String publishToFilename) {
+ super(parent, name);
+ this.teamDefName = teamDefName;
+ this.teamDef = null;
+ this.publishToFilename = publishToFilename;
+ }
+
+ public PublishFullVersionReportItem(XNavigateItem parent) {
+ this(parent, "Publish Full Version Report", (String) null, null);
+ }
+
+ @Override
+ public void run(TableLoadOption... tableLoadOptions) throws OseeCoreException {
+ String usePublishToFilename = publishToFilename;
+ if (usePublishToFilename == null) {
+ final FileDialog dialog = new FileDialog(Displays.getActiveShell().getShell(), SWT.SAVE);
+ dialog.setFilterExtensions(new String[] {"*.html"});
+ usePublishToFilename = dialog.open();
+ if (usePublishToFilename == null) {
+ return;
+ }
+ }
+ TeamDefinitionArtifact useTeamDef = teamDef;
+ if (useTeamDef == null && teamDefName != null) {
+ try {
+ useTeamDef =
+ (TeamDefinitionArtifact) AtsCacheManager.getSoleArtifactByName(
+ ArtifactTypeManager.getType(AtsArtifactTypes.TeamDefinition), teamDefName);
+ } catch (ArtifactDoesNotExist ex) {
+ // do nothing, going to get team below
+ }
+ }
+ if (useTeamDef == null) {
+ TeamDefinitionDialog ld = new TeamDefinitionDialog("Select Team", "Select Team");
+ ld.setInput(TeamDefinitionArtifact.getTeamDefinitions(Active.Both));
+ int result = ld.open();
+ if (result == 0) {
+ useTeamDef = (TeamDefinitionArtifact) ld.getResult()[0];
+ } else {
+ return;
+ }
+ } else if (!MessageDialog.openConfirm(Displays.getActiveShell(), getName(), getName())) {
+ return;
+ }
+
+ String title = useTeamDef.getName() + " Version Report";
+ PublishReportJob job = new PublishReportJob(title, teamDef, usePublishToFilename);
+ job.setUser(true);
+ job.setPriority(Job.LONG);
+ job.schedule();
+ }
+
+ private static class PublishReportJob extends Job {
+
+ private final TeamDefinitionArtifact teamDef;
+ private final String filename;
+
+ public PublishReportJob(String title, TeamDefinitionArtifact teamDef, String filename) {
+ super(title);
+ this.teamDef = teamDef;
+ this.filename = filename;
+ }
+
+ @Override
+ public IStatus run(IProgressMonitor monitor) {
+ try {
+ String html = VersionReportJob.getFullReleaseReport(teamDef, monitor);
+ Lib.writeStringToFile(html, new File(filename));
+ Program.launch(filename);
+ AWorkbench.popup("Publish Complete", "Data Published To \"" + filename + "\"");
+ } catch (Exception ex) {
+ return new Status(IStatus.ERROR, AtsPlugin.PLUGIN_ID, -1, ex.toString(), ex);
+ }
+
+ monitor.done();
+ return Status.OK_STATUS;
+ }
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ReleaseVersionItem.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ReleaseVersionItem.java
index dc0eab620e6..b53ee3d4c1f 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ReleaseVersionItem.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/ReleaseVersionItem.java
@@ -43,7 +43,6 @@ public class ReleaseVersionItem extends XNavigateItemAction {
private final TeamDefinitionArtifact teamDefHoldingVersions;
/**
- * @param parent
* @param teamDefHoldingVersions Team Definition Artifact that is related to versions or null for popup selection
*/
public ReleaseVersionItem(XNavigateItem parent, TeamDefinitionArtifact teamDefHoldingVersions) {
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 b11f540299a..174911d48de 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
@@ -1,358 +1,358 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2007 Boeing.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Boeing - initial API and implementation
- *******************************************************************************/
-package org.eclipse.osee.ats.navigate;
-
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Set;
-import java.util.logging.Level;
-import org.eclipse.osee.ats.AtsImage;
-import org.eclipse.osee.ats.artifact.TaskableStateMachineArtifact;
-import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
-import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
-import org.eclipse.osee.ats.artifact.VersionArtifact;
-import org.eclipse.osee.ats.artifact.VersionArtifact.VersionReleaseType;
-import org.eclipse.osee.ats.internal.AtsPlugin;
-import org.eclipse.osee.ats.util.widgets.ReviewManager;
-import org.eclipse.osee.ats.util.widgets.XHyperlabelTeamDefinitionSelection;
-import org.eclipse.osee.ats.world.WorldEditor;
-import org.eclipse.osee.ats.world.WorldEditorParameterSearchItem;
-import org.eclipse.osee.ats.world.search.TeamWorldSearchItem;
-import org.eclipse.osee.ats.world.search.TeamWorldSearchItem.ReleasedOption;
-import org.eclipse.osee.framework.core.exception.OseeCoreException;
-import org.eclipse.osee.framework.jdk.core.util.Strings;
-import org.eclipse.osee.framework.logging.OseeLevel;
-import org.eclipse.osee.framework.logging.OseeLog;
-import org.eclipse.osee.framework.skynet.core.User;
-import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
-import org.eclipse.osee.framework.skynet.core.utility.Artifacts;
-import org.eclipse.osee.framework.ui.plugin.util.Result;
-import org.eclipse.osee.framework.ui.skynet.widgets.XCheckBox;
-import org.eclipse.osee.framework.ui.skynet.widgets.XCombo;
-import org.eclipse.osee.framework.ui.skynet.widgets.XMembersCombo;
-import org.eclipse.osee.framework.ui.skynet.widgets.XModifiedListener;
-import org.eclipse.osee.framework.ui.skynet.widgets.XWidget;
-import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayout;
-import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayoutData;
-import org.eclipse.osee.framework.ui.skynet.widgets.workflow.IDynamicWidgetLayoutListener;
-import org.eclipse.ui.forms.widgets.FormToolkit;
-
-/**
- * @author Donald G. Dunne
- */
-public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSearchItem {
-
- protected XHyperlabelTeamDefinitionSelection teamCombo = null;
- protected XCombo releasedCombo = null;
- protected XCombo versionCombo = null;
- protected XMembersCombo assigneeCombo;
- protected XCheckBox includeCompletedCancelledCheckbox;
- protected XCheckBox showFlatCheckbox;
-
- public TeamWorkflowSearchWorkflowSearchItem(String name) {
- super(name, AtsImage.TEAM_WORKFLOW);
- }
-
- public TeamWorkflowSearchWorkflowSearchItem() {
- this("Team Workflow Search");
- }
-
- public TeamWorkflowSearchWorkflowSearchItem(TeamWorkflowSearchWorkflowSearchItem editTeamWorkflowSearchItem) {
- super(editTeamWorkflowSearchItem, AtsImage.TEAM_WORKFLOW);
- }
-
- @Override
- public TeamWorkflowSearchWorkflowSearchItem copy() {
- return new TeamWorkflowSearchWorkflowSearchItem(this);
- }
-
- @Override
- public TeamWorkflowSearchWorkflowSearchItem copyProvider() {
- return new TeamWorkflowSearchWorkflowSearchItem(this);
- }
-
- @SuppressWarnings("unused")
- @Override
- public String getParameterXWidgetXml() throws OseeCoreException {
- return "<xWidgets>" +
- //
- "<XWidget xwidgetType=\"XHyperlabelTeamDefinitionSelection\" displayName=\"Team Definitions(s)\" horizontalLabel=\"true\"/>" +
- //
- "<XWidget xwidgetType=\"XCombo()\" beginComposite=\"10\" displayName=\"Version\" horizontalLabel=\"true\"/>" +
- //
- "<XWidget xwidgetType=\"XCombo(Both,Released,UnReleased)\" displayName=\"Released\" horizontalLabel=\"true\"/>" +
- //
- "<XWidget xwidgetType=\"XMembersCombo\" displayName=\"Assignee\" horizontalLabel=\"true\"/>" +
- //
- "<XWidget xwidgetType=\"XCheckBox\" displayName=\"Include Completed/Cancelled\" defaultValue=\"false\" labelAfter=\"true\" horizontalLabel=\"true\"/>" +
- //
- "<XWidget xwidgetType=\"XCheckBox\" displayName=\"Show Flat\" defaultValue=\"false\" labelAfter=\"true\" horizontalLabel=\"true\" toolTip=\"Show Tasks/Reviews flattened instead of hierarchcial\"/>" +
- //
- "</xWidgets>";
- }
-
- @Override
- public Collection<? extends Artifact> performSearchGetResults(SearchType searchType) throws OseeCoreException {
- Collection<Artifact> artifacts =
- new TeamWorldSearchItem("", getSelectedTeamDefinitions(), isIncludeCompletedCancelledCheckbox(), false, false,
- getSelectedVersionArtifact(), getSelectedUser(), getSelectedReleased()).performSearchGetResults(false);
- return filterShowFlat(artifacts);
- }
-
- protected Collection<? extends Artifact> filterShowFlat(Collection<Artifact> artifacts) throws OseeCoreException {
- if (!isShowFlatCheckbox()) {
- return artifacts;
- }
- Set<Artifact> results = new HashSet<Artifact>(artifacts);
- for (Artifact artifact : artifacts) {
- if (artifact instanceof TaskableStateMachineArtifact) {
- results.addAll(((TaskableStateMachineArtifact) artifact).getTaskArtifacts());
- }
- if (artifact instanceof TeamWorkFlowArtifact) {
- results.addAll(ReviewManager.getReviews((TeamWorkFlowArtifact) artifact));
- }
- }
- return results;
- }
-
- @Override
- public String getSelectedName(SearchType searchType) throws OseeCoreException {
- StringBuffer sb = new StringBuffer();
- Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
- if (teamDefs.size() > 0) {
- sb.append(" - Teams: " + org.eclipse.osee.framework.jdk.core.util.Collections.toString(",", teamDefs));
- }
- if (getSelectedVersionArtifact() != null) {
- sb.append(" - Version: " + getSelectedVersionArtifact());
- }
- ReleasedOption releaseOption = getSelectedReleased();
- if (releaseOption != null && releaseOption != ReleasedOption.Both) {
- sb.append(" - ReleasedOption: " + releaseOption);
- }
- if (getSelectedUser() != null) {
- sb.append(" - Assignee: " + getSelectedUser());
- }
- if (isIncludeCompletedCancelledCheckbox()) {
- sb.append(" - Include Completed/Cancelled");
- }
- return Strings.truncate(getName() + sb.toString(), WorldEditor.TITLE_MAX_LENGTH, true);
- }
-
- @SuppressWarnings("unused")
- @Override
- public void widgetCreated(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) throws OseeCoreException {
- if (widget.getLabel().equals("Assignee")) {
- assigneeCombo = (XMembersCombo) widget;
- }
- if (widget.getLabel().equals("Include Completed/Cancelled")) {
- includeCompletedCancelledCheckbox = (XCheckBox) widget;
- }
- if (widget.getLabel().equals("Show Flat")) {
- showFlatCheckbox = (XCheckBox) widget;
- }
- if (widget.getLabel().equals("Version")) {
- versionCombo = (XCombo) widget;
- versionCombo.getComboBox().setVisibleItemCount(25);
- widget.setToolTip("Select Team to populate Version list");
- }
- if (widget.getLabel().equals("Released")) {
- releasedCombo = (XCombo) widget;
- }
- if (widget.getLabel().equals("Team Definitions(s)")) {
- teamCombo = (XHyperlabelTeamDefinitionSelection) widget;
- teamCombo.addXModifiedListener(new XModifiedListener() {
- @Override
- public void widgetModified(XWidget widget) {
- if (versionCombo != null) {
- try {
- Collection<TeamDefinitionArtifact> teamDefArts = getSelectedTeamDefinitions();
- if (teamDefArts.isEmpty()) {
- versionCombo.setDataStrings(new String[] {});
- return;
- }
- TeamDefinitionArtifact teamDefHoldingVersions =
- teamDefArts.iterator().next().getTeamDefinitionHoldingVersions();
- if (teamDefHoldingVersions == null) {
- versionCombo.setDataStrings(new String[] {});
- return;
- }
- Collection<String> names =
- Artifacts.artNames(teamDefHoldingVersions.getVersionsArtifacts(VersionReleaseType.Both));
- if (names.isEmpty()) {
- versionCombo.setDataStrings(new String[] {});
- return;
- }
- versionCombo.setDataStrings(names.toArray(new String[names.size()]));
- } catch (Exception ex) {
- OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, ex);
- }
- }
- }
- });
- }
- }
-
- protected User getSelectedUser() {
- if (assigneeCombo == null) {
- return null;
- }
- return assigneeCombo.getUser();
- }
-
- public void setSelectedUser(User user) {
- if (assigneeCombo != null) {
- assigneeCombo.set(user);
- }
- }
-
- protected boolean isIncludeCompletedCancelledCheckbox() {
- if (includeCompletedCancelledCheckbox == null) {
- return false;
- }
- return includeCompletedCancelledCheckbox.isSelected();
- }
-
- public void includeCompletedCancelledCheckbox(boolean selected) {
- if (includeCompletedCancelledCheckbox != null) {
- includeCompletedCancelledCheckbox.set(selected);
- }
- }
-
- protected boolean isShowFlatCheckbox() {
- if (showFlatCheckbox == null) {
- return false;
- }
- return showFlatCheckbox.isSelected();
- }
-
- public void includeShowFlatCheckbox(boolean selected) {
- if (showFlatCheckbox != null) {
- showFlatCheckbox.set(selected);
- }
- }
-
- protected VersionArtifact getSelectedVersionArtifact() throws OseeCoreException {
- if (versionCombo == null) {
- return null;
- }
- String versionStr = versionCombo.get();
- if (!Strings.isValid(versionStr)) {
- return null;
- }
- Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
- if (teamDefs.size() > 0) {
- TeamDefinitionArtifact teamDefHoldingVersions = teamDefs.iterator().next().getTeamDefinitionHoldingVersions();
- if (teamDefHoldingVersions == null) {
- return null;
- }
- for (VersionArtifact versionArtifact : teamDefHoldingVersions.getVersionsArtifacts(VersionReleaseType.Both)) {
- if (versionArtifact.getName().equals(versionStr)) {
- return versionArtifact;
- }
- }
- }
- return null;
- }
-
- public void setVersion(String versionStr) {
- if (versionCombo != null && versionCombo.getInDataStrings() != null) {
- // should check if the version combo was populated
- if (versionCombo.getInDataStrings().length > 0) {
- versionCombo.set(versionStr);
- }
- }
- }
-
- public Collection<TeamDefinitionArtifact> getSelectedTeamDefinitions() {
- if (teamCombo == null) {
- return java.util.Collections.emptyList();
- }
- return teamCombo.getSelectedTeamDefintions();
- }
-
- public void setSelectedTeamDefinitions(Collection<TeamDefinitionArtifact> selectedTeamDefs) {
- if (teamCombo != null) {
- teamCombo.setSelectedTeamDefs(selectedTeamDefs);
- teamCombo.notifyXModifiedListeners();
- }
- }
-
- protected ReleasedOption getSelectedReleased() {
- if (releasedCombo == null || !Strings.isValid(releasedCombo.get())) {
- return ReleasedOption.Both;
- }
- return ReleasedOption.valueOf(releasedCombo.get());
- }
-
- public void setSelectedReleased(ReleasedOption option) {
- if (releasedCombo != null) {
- releasedCombo.set(option.toString());
- }
- }
-
- @Override
- public void createXWidgetLayoutData(DynamicXWidgetLayoutData layoutData, XWidget widget, FormToolkit toolkit, Artifact art, XModifiedListener modListener, boolean isEditable) {
- // do nothing
- }
-
- @Override
- public void widgetCreating(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) {
- // do nothing
- }
-
- @SuppressWarnings("unused")
- @Override
- public Result isParameterSelectionValid() throws OseeCoreException {
- try {
- boolean selected = false;
- Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
- if (teamDefs.size() > 0) {
- selected = true;
- }
- VersionArtifact verArt = getSelectedVersionArtifact();
- if (verArt != null) {
- selected = true;
- }
- User user = getSelectedUser();
- if (user != null) {
- selected = true;
- }
- boolean includeCompleted = isIncludeCompletedCancelledCheckbox();
- if (!selected) {
- return new Result("You must select at least Team, Version or Assignee.");
- }
- if (user != null && includeCompleted) {
- return new Result("Assignee and Include Completed are not compatible selections.");
- }
- if (user != null && includeCompleted && verArt == null && teamDefs.isEmpty()) {
- return new Result("You must select at least Team or Version with Include Completed.");
- }
- return Result.TrueResult;
- } catch (Exception ex) {
- OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
- return new Result("Exception: " + ex.getLocalizedMessage());
- }
- }
-
- @Override
- public IDynamicWidgetLayoutListener getDynamicWidgetLayoutListener() {
- return null;
- }
-
- @Override
- public VersionArtifact getTargetedVersionArtifact() throws OseeCoreException {
- if (versionCombo == null) {
- return null;
- }
- return getSelectedVersionArtifact();
- }
-
-}
+/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.ats.navigate;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+import java.util.logging.Level;
+import org.eclipse.osee.ats.AtsImage;
+import org.eclipse.osee.ats.artifact.TaskableStateMachineArtifact;
+import org.eclipse.osee.ats.artifact.TeamDefinitionArtifact;
+import org.eclipse.osee.ats.artifact.TeamWorkFlowArtifact;
+import org.eclipse.osee.ats.artifact.VersionArtifact;
+import org.eclipse.osee.ats.artifact.VersionArtifact.VersionReleaseType;
+import org.eclipse.osee.ats.internal.AtsPlugin;
+import org.eclipse.osee.ats.util.widgets.ReviewManager;
+import org.eclipse.osee.ats.util.widgets.XHyperlabelTeamDefinitionSelection;
+import org.eclipse.osee.ats.world.WorldEditor;
+import org.eclipse.osee.ats.world.WorldEditorParameterSearchItem;
+import org.eclipse.osee.ats.world.search.TeamWorldSearchItem;
+import org.eclipse.osee.ats.world.search.TeamWorldSearchItem.ReleasedOption;
+import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.jdk.core.util.Strings;
+import org.eclipse.osee.framework.logging.OseeLevel;
+import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.User;
+import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
+import org.eclipse.osee.framework.skynet.core.utility.Artifacts;
+import org.eclipse.osee.framework.ui.plugin.util.Result;
+import org.eclipse.osee.framework.ui.skynet.widgets.XCheckBox;
+import org.eclipse.osee.framework.ui.skynet.widgets.XCombo;
+import org.eclipse.osee.framework.ui.skynet.widgets.XMembersCombo;
+import org.eclipse.osee.framework.ui.skynet.widgets.XModifiedListener;
+import org.eclipse.osee.framework.ui.skynet.widgets.XWidget;
+import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayout;
+import org.eclipse.osee.framework.ui.skynet.widgets.workflow.DynamicXWidgetLayoutData;
+import org.eclipse.osee.framework.ui.skynet.widgets.workflow.IDynamicWidgetLayoutListener;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class TeamWorkflowSearchWorkflowSearchItem extends WorldEditorParameterSearchItem {
+
+ protected XHyperlabelTeamDefinitionSelection teamCombo = null;
+ protected XCombo releasedCombo = null;
+ protected XCombo versionCombo = null;
+ protected XMembersCombo assigneeCombo;
+ protected XCheckBox includeCompletedCancelledCheckbox;
+ protected XCheckBox showFlatCheckbox;
+
+ public TeamWorkflowSearchWorkflowSearchItem(String name) {
+ super(name, AtsImage.TEAM_WORKFLOW);
+ }
+
+ public TeamWorkflowSearchWorkflowSearchItem() {
+ this("Team Workflow Search");
+ }
+
+ public TeamWorkflowSearchWorkflowSearchItem(TeamWorkflowSearchWorkflowSearchItem editTeamWorkflowSearchItem) {
+ super(editTeamWorkflowSearchItem, AtsImage.TEAM_WORKFLOW);
+ }
+
+ @Override
+ public TeamWorkflowSearchWorkflowSearchItem copy() {
+ return new TeamWorkflowSearchWorkflowSearchItem(this);
+ }
+
+ @Override
+ public TeamWorkflowSearchWorkflowSearchItem copyProvider() {
+ return new TeamWorkflowSearchWorkflowSearchItem(this);
+ }
+
+ @SuppressWarnings("unused")
+ @Override
+ public String getParameterXWidgetXml() throws OseeCoreException {
+ return "<xWidgets>" +
+ //
+ "<XWidget xwidgetType=\"XHyperlabelTeamDefinitionSelection\" displayName=\"Team Definitions(s)\" horizontalLabel=\"true\"/>" +
+ //
+ "<XWidget xwidgetType=\"XCombo()\" beginComposite=\"10\" displayName=\"Version\" horizontalLabel=\"true\"/>" +
+ //
+ "<XWidget xwidgetType=\"XCombo(Both,Released,UnReleased)\" displayName=\"Released\" horizontalLabel=\"true\"/>" +
+ //
+ "<XWidget xwidgetType=\"XMembersCombo\" displayName=\"Assignee\" horizontalLabel=\"true\"/>" +
+ //
+ "<XWidget xwidgetType=\"XCheckBox\" displayName=\"Include Completed/Cancelled\" defaultValue=\"false\" labelAfter=\"true\" horizontalLabel=\"true\"/>" +
+ //
+ "<XWidget xwidgetType=\"XCheckBox\" displayName=\"Show Flat\" defaultValue=\"false\" labelAfter=\"true\" horizontalLabel=\"true\" toolTip=\"Show Tasks/Reviews flattened instead of hierarchcial\"/>" +
+ //
+ "</xWidgets>";
+ }
+
+ @Override
+ public Collection<? extends Artifact> performSearchGetResults(SearchType searchType) throws OseeCoreException {
+ Collection<Artifact> artifacts =
+ new TeamWorldSearchItem("", getSelectedTeamDefinitions(), isIncludeCompletedCancelledCheckbox(), false, false,
+ getSelectedVersionArtifact(), getSelectedUser(), getSelectedReleased()).performSearchGetResults(false);
+ return filterShowFlat(artifacts);
+ }
+
+ protected Collection<? extends Artifact> filterShowFlat(Collection<Artifact> artifacts) throws OseeCoreException {
+ if (!isShowFlatCheckbox()) {
+ return artifacts;
+ }
+ Set<Artifact> results = new HashSet<Artifact>(artifacts);
+ for (Artifact artifact : artifacts) {
+ if (artifact instanceof TaskableStateMachineArtifact) {
+ results.addAll(((TaskableStateMachineArtifact) artifact).getTaskArtifacts());
+ }
+ if (artifact instanceof TeamWorkFlowArtifact) {
+ results.addAll(ReviewManager.getReviews((TeamWorkFlowArtifact) artifact));
+ }
+ }
+ return results;
+ }
+
+ @Override
+ public String getSelectedName(SearchType searchType) throws OseeCoreException {
+ StringBuffer sb = new StringBuffer();
+ Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
+ if (teamDefs.size() > 0) {
+ sb.append(" - Teams: " + org.eclipse.osee.framework.jdk.core.util.Collections.toString(",", teamDefs));
+ }
+ if (getSelectedVersionArtifact() != null) {
+ sb.append(" - Version: " + getSelectedVersionArtifact());
+ }
+ ReleasedOption releaseOption = getSelectedReleased();
+ if (releaseOption != null && releaseOption != ReleasedOption.Both) {
+ sb.append(" - ReleasedOption: " + releaseOption);
+ }
+ if (getSelectedUser() != null) {
+ sb.append(" - Assignee: " + getSelectedUser());
+ }
+ if (isIncludeCompletedCancelledCheckbox()) {
+ sb.append(" - Include Completed/Cancelled");
+ }
+ return Strings.truncate(getName() + sb.toString(), WorldEditor.TITLE_MAX_LENGTH, true);
+ }
+
+ @SuppressWarnings("unused")
+ @Override
+ public void widgetCreated(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) throws OseeCoreException {
+ if (widget.getLabel().equals("Assignee")) {
+ assigneeCombo = (XMembersCombo) widget;
+ }
+ if (widget.getLabel().equals("Include Completed/Cancelled")) {
+ includeCompletedCancelledCheckbox = (XCheckBox) widget;
+ }
+ if (widget.getLabel().equals("Show Flat")) {
+ showFlatCheckbox = (XCheckBox) widget;
+ }
+ if (widget.getLabel().equals("Version")) {
+ versionCombo = (XCombo) widget;
+ versionCombo.getComboBox().setVisibleItemCount(25);
+ widget.setToolTip("Select Team to populate Version list");
+ }
+ if (widget.getLabel().equals("Released")) {
+ releasedCombo = (XCombo) widget;
+ }
+ if (widget.getLabel().equals("Team Definitions(s)")) {
+ teamCombo = (XHyperlabelTeamDefinitionSelection) widget;
+ teamCombo.addXModifiedListener(new XModifiedListener() {
+ @Override
+ public void widgetModified(XWidget widget) {
+ if (versionCombo != null) {
+ try {
+ Collection<TeamDefinitionArtifact> teamDefArts = getSelectedTeamDefinitions();
+ if (teamDefArts.isEmpty()) {
+ versionCombo.setDataStrings(new String[] {});
+ return;
+ }
+ TeamDefinitionArtifact teamDefHoldingVersions =
+ teamDefArts.iterator().next().getTeamDefinitionHoldingVersions();
+ if (teamDefHoldingVersions == null) {
+ versionCombo.setDataStrings(new String[] {});
+ return;
+ }
+ Collection<String> names =
+ Artifacts.artNames(teamDefHoldingVersions.getVersionsArtifacts(VersionReleaseType.Both));
+ if (names.isEmpty()) {
+ versionCombo.setDataStrings(new String[] {});
+ return;
+ }
+ versionCombo.setDataStrings(names.toArray(new String[names.size()]));
+ } catch (Exception ex) {
+ OseeLog.log(AtsPlugin.class, OseeLevel.SEVERE_POPUP, ex);
+ }
+ }
+ }
+ });
+ }
+ }
+
+ protected User getSelectedUser() {
+ if (assigneeCombo == null) {
+ return null;
+ }
+ return assigneeCombo.getUser();
+ }
+
+ public void setSelectedUser(User user) {
+ if (assigneeCombo != null) {
+ assigneeCombo.set(user);
+ }
+ }
+
+ protected boolean isIncludeCompletedCancelledCheckbox() {
+ if (includeCompletedCancelledCheckbox == null) {
+ return false;
+ }
+ return includeCompletedCancelledCheckbox.isSelected();
+ }
+
+ public void includeCompletedCancelledCheckbox(boolean selected) {
+ if (includeCompletedCancelledCheckbox != null) {
+ includeCompletedCancelledCheckbox.set(selected);
+ }
+ }
+
+ protected boolean isShowFlatCheckbox() {
+ if (showFlatCheckbox == null) {
+ return false;
+ }
+ return showFlatCheckbox.isSelected();
+ }
+
+ public void includeShowFlatCheckbox(boolean selected) {
+ if (showFlatCheckbox != null) {
+ showFlatCheckbox.set(selected);
+ }
+ }
+
+ protected VersionArtifact getSelectedVersionArtifact() throws OseeCoreException {
+ if (versionCombo == null) {
+ return null;
+ }
+ String versionStr = versionCombo.get();
+ if (!Strings.isValid(versionStr)) {
+ return null;
+ }
+ Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
+ if (teamDefs.size() > 0) {
+ TeamDefinitionArtifact teamDefHoldingVersions = teamDefs.iterator().next().getTeamDefinitionHoldingVersions();
+ if (teamDefHoldingVersions == null) {
+ return null;
+ }
+ for (VersionArtifact versionArtifact : teamDefHoldingVersions.getVersionsArtifacts(VersionReleaseType.Both)) {
+ if (versionArtifact.getName().equals(versionStr)) {
+ return versionArtifact;
+ }
+ }
+ }
+ return null;
+ }
+
+ public void setVersion(String versionStr) {
+ if (versionCombo != null && versionCombo.getInDataStrings() != null) {
+ // should check if the version combo was populated
+ if (versionCombo.getInDataStrings().length > 0) {
+ versionCombo.set(versionStr);
+ }
+ }
+ }
+
+ public Collection<TeamDefinitionArtifact> getSelectedTeamDefinitions() {
+ if (teamCombo == null) {
+ return java.util.Collections.emptyList();
+ }
+ return teamCombo.getSelectedTeamDefintions();
+ }
+
+ public void setSelectedTeamDefinitions(Collection<TeamDefinitionArtifact> selectedTeamDefs) {
+ if (teamCombo != null) {
+ teamCombo.setSelectedTeamDefs(selectedTeamDefs);
+ teamCombo.notifyXModifiedListeners();
+ }
+ }
+
+ protected ReleasedOption getSelectedReleased() {
+ if (releasedCombo == null || !Strings.isValid(releasedCombo.get())) {
+ return ReleasedOption.Both;
+ }
+ return ReleasedOption.valueOf(releasedCombo.get());
+ }
+
+ public void setSelectedReleased(ReleasedOption option) {
+ if (releasedCombo != null) {
+ releasedCombo.set(option.toString());
+ }
+ }
+
+ @Override
+ public void createXWidgetLayoutData(DynamicXWidgetLayoutData layoutData, XWidget widget, FormToolkit toolkit, Artifact art, XModifiedListener modListener, boolean isEditable) {
+ // do nothing
+ }
+
+ @Override
+ public void widgetCreating(XWidget widget, FormToolkit toolkit, Artifact art, DynamicXWidgetLayout dynamicXWidgetLayout, XModifiedListener modListener, boolean isEditable) {
+ // do nothing
+ }
+
+ @SuppressWarnings("unused")
+ @Override
+ public Result isParameterSelectionValid() throws OseeCoreException {
+ try {
+ boolean selected = false;
+ Collection<TeamDefinitionArtifact> teamDefs = getSelectedTeamDefinitions();
+ if (teamDefs.size() > 0) {
+ selected = true;
+ }
+ VersionArtifact verArt = getSelectedVersionArtifact();
+ if (verArt != null) {
+ selected = true;
+ }
+ User user = getSelectedUser();
+ if (user != null) {
+ selected = true;
+ }
+ boolean includeCompleted = isIncludeCompletedCancelledCheckbox();
+ if (!selected) {
+ return new Result("You must select at least Team, Version or Assignee.");
+ }
+ if (user != null && includeCompleted) {
+ return new Result("Assignee and Include Completed are not compatible selections.");
+ }
+ if (user != null && includeCompleted && verArt == null && teamDefs.isEmpty()) {
+ return new Result("You must select at least Team or Version with Include Completed.");
+ }
+ return Result.TrueResult;
+ } catch (Exception ex) {
+ OseeLog.log(AtsPlugin.class, Level.SEVERE, ex);
+ return new Result("Exception: " + ex.getLocalizedMessage());
+ }
+ }
+
+ @Override
+ public IDynamicWidgetLayoutListener getDynamicWidgetLayoutListener() {
+ return null;
+ }
+
+ @Override
+ public VersionArtifact getTargetedVersionArtifact() throws OseeCoreException {
+ if (versionCombo == null) {
+ return null;
+ }
+ return getSelectedVersionArtifact();
+ }
+
+}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UpdateAtsWorkItemDefinitions.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UpdateAtsWorkItemDefinitions.java
index ebd566d3042..fd686d1b4d3 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UpdateAtsWorkItemDefinitions.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/UpdateAtsWorkItemDefinitions.java
@@ -27,9 +27,6 @@ import org.eclipse.osee.framework.ui.swt.Displays;
*/
public class UpdateAtsWorkItemDefinitions extends XNavigateItemAction {
- /**
- * @param parent
- */
public UpdateAtsWorkItemDefinitions(XNavigateItem parent) {
super(parent, "Update Ats WorkItemDefinitions", PluginUiImage.ADMIN);
}
diff --git a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/VisitedItems.java b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/VisitedItems.java
index b33cb3df0a2..cd0bbd85a42 100644
--- a/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/VisitedItems.java
+++ b/plugins/org.eclipse.osee.ats/src/org/eclipse/osee/ats/navigate/VisitedItems.java
@@ -57,9 +57,6 @@ public class VisitedItems extends XNavigateItemAction {
}
}
- /**
- * @param parent
- */
public VisitedItems(XNavigateItem parent) {
super(parent, "My Recently Visited", AtsImage.GLOBE);
}

Back to the top