Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorddunne2009-11-17 19:53:14 +0000
committerddunne2009-11-17 19:53:14 +0000
commitf2c5c9175806e7fa123528ec95df996fe832a453 (patch)
tree518f181fbcb54e8559e1f6532e505edb81d0335d
parente4887025a37c5d333ce68aa0212f9e2f93f21b87 (diff)
downloadorg.eclipse.osee-f2c5c9175806e7fa123528ec95df996fe832a453.tar.gz
org.eclipse.osee-f2c5c9175806e7fa123528ec95df996fe832a453.tar.xz
org.eclipse.osee-f2c5c9175806e7fa123528ec95df996fe832a453.zip
code coverage
-rw-r--r--org.eclipse.osee.coverage.test/META-INF/MANIFEST.MF1
-rw-r--r--org.eclipse.osee.coverage.test/fragment.xml6
-rw-r--r--org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/package1/CoveragePackage1.java2
-rw-r--r--org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpCreateAndImportItem.java2
-rw-r--r--org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpSelectAndImportItem.java3
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/CoverageManager.java2
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/NewCoveragePackageAction.java4
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/OpenCoveragePackageAction.java5
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditor.java77
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorInput.java23
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorLoadingTab.java87
-rw-r--r--org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageRenderer.java3
12 files changed, 196 insertions, 19 deletions
diff --git a/org.eclipse.osee.coverage.test/META-INF/MANIFEST.MF b/org.eclipse.osee.coverage.test/META-INF/MANIFEST.MF
index 8afd3f4a4b9..8db3c26efe7 100644
--- a/org.eclipse.osee.coverage.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.osee.coverage.test/META-INF/MANIFEST.MF
@@ -12,4 +12,5 @@ Export-Package: org.eclipse.osee.coverage.test,
org.eclipse.osee.coverage.test.import1,
org.eclipse.osee.coverage.test.import2,
org.eclipse.osee.coverage.test.import3,
+ org.eclipse.osee.coverage.test.import4,
org.eclipse.osee.coverage.test.navigate
diff --git a/org.eclipse.osee.coverage.test/fragment.xml b/org.eclipse.osee.coverage.test/fragment.xml
index 123847c2555..aa756a2ccdc 100644
--- a/org.eclipse.osee.coverage.test/fragment.xml
+++ b/org.eclipse.osee.coverage.test/fragment.xml
@@ -31,11 +31,5 @@
className="org.eclipse.osee.coverage.test.import4.CoverageImport4TestBlam">
</Operation>
</extension>
- <extension
- point="org.eclipse.osee.framework.ui.skynet.BlamOperation">
- <Operation
- className="org.eclipse.osee.coverage.test.import4.CoveragePackage1Import4">
- </Operation>
- </extension>
</fragment>
diff --git a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/package1/CoveragePackage1.java b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/package1/CoveragePackage1.java
index bb072caac11..4d988b3ed8f 100644
--- a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/package1/CoveragePackage1.java
+++ b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/package1/CoveragePackage1.java
@@ -33,6 +33,6 @@ public class CoveragePackage1 extends XNavigateItemAction {
@Override
public void run(TableLoadOption... tableLoadOptions) throws Exception {
CoveragePackage coveragePackage = new CoveragePackage("Coverage Package 1");
- CoverageEditor.open(new CoverageEditorInput(null, coveragePackage));
+ CoverageEditor.open(new CoverageEditorInput(coveragePackage.getName(), null, coveragePackage, true));
}
}
diff --git a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpCreateAndImportItem.java b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpCreateAndImportItem.java
index 30836b35066..774dfebe9f0 100644
--- a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpCreateAndImportItem.java
+++ b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpCreateAndImportItem.java
@@ -35,7 +35,7 @@ public class CpCreateAndImportItem extends XNavigateItemAction {
@Override
public void run(TableLoadOption... tableLoadOptions) throws Exception {
coveragePackage = new CoveragePackage(getName() + " - #" + IncrementingNum.get());
- CoverageEditor.open(new CoverageEditorInput(null, coveragePackage));
+ CoverageEditor.open(new CoverageEditorInput(coveragePackage.getName(), null, coveragePackage, true));
// Process Import 1
CoverageEditor editor = null;
for (CoverageEditor coverageEditor : CoverageEditor.getEditors()) {
diff --git a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpSelectAndImportItem.java b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpSelectAndImportItem.java
index 131073d7e4c..608a4daf7d2 100644
--- a/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpSelectAndImportItem.java
+++ b/org.eclipse.osee.coverage.test/src/org/eclipse/osee/coverage/test/util/CpSelectAndImportItem.java
@@ -41,7 +41,8 @@ public class CpSelectAndImportItem extends XNavigateItemAction {
if (dialog.open() != 0) return;
Artifact coveragePackageArtifact = (Artifact) dialog.getResult()[0];
CoveragePackage coveragePackage = OseeCoveragePackageStore.get(coveragePackageArtifact);
- CoverageEditor.open(new CoverageEditorInput(coveragePackageArtifact, coveragePackage));
+ CoverageEditor.open(new CoverageEditorInput(coveragePackage.getName(), coveragePackageArtifact, coveragePackage,
+ true));
// Process Import 1
CoverageEditor editor = null;
for (CoverageEditor coverageEditor : CoverageEditor.getEditors()) {
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/CoverageManager.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/CoverageManager.java
index d54845d9cf5..7d3e4f1b0b4 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/CoverageManager.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/CoverageManager.java
@@ -28,7 +28,7 @@ public class CoverageManager {
public static void importCoverage(ICoverageImporter coverageImporter) throws OseeCoreException {
CoverageImport coverageImport = coverageImporter.run();
- CoverageEditor.open(new CoverageEditorInput(null, coverageImport));
+ CoverageEditor.open(new CoverageEditorInput(coverageImport.getName(), null, coverageImport, false));
}
public static Collection<AbstractCoverageBlam> getCoverageBlams() {
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/NewCoveragePackageAction.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/NewCoveragePackageAction.java
index 996f4bb36f2..549f75f3f52 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/NewCoveragePackageAction.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/NewCoveragePackageAction.java
@@ -48,8 +48,8 @@ public class NewCoveragePackageAction extends Action {
SkynetTransaction transaction = new SkynetTransaction(CoverageUtil.getBranch(), "Add Coverage Package");
OseeCoverageStore.get(coveragePackage).save(transaction);
transaction.execute();
- CoverageEditor.open(new CoverageEditorInput(OseeCoverageStore.get(coveragePackage).getArtifact(false),
- coveragePackage));
+ CoverageEditor.open(new CoverageEditorInput(dialog.getEntry(),
+ OseeCoverageStore.get(coveragePackage).getArtifact(false), coveragePackage, false));
}
} catch (OseeCoreException ex) {
OseeLog.log(Activator.class, OseeLevel.SEVERE_POPUP, ex);
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/OpenCoveragePackageAction.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/OpenCoveragePackageAction.java
index b6231426d1f..debca1ac125 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/OpenCoveragePackageAction.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/action/OpenCoveragePackageAction.java
@@ -10,7 +10,6 @@ import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.osee.coverage.editor.CoverageEditor;
import org.eclipse.osee.coverage.editor.CoverageEditorInput;
import org.eclipse.osee.coverage.internal.Activator;
-import org.eclipse.osee.coverage.model.CoveragePackage;
import org.eclipse.osee.coverage.store.OseeCoveragePackageStore;
import org.eclipse.osee.coverage.util.CoverageImage;
import org.eclipse.osee.coverage.util.CoverageUtil;
@@ -47,8 +46,8 @@ public class OpenCoveragePackageAction extends Action {
dialog.setInput(OseeCoveragePackageStore.getCoveragePackageArtifacts());
if (dialog.open() == 0) {
Artifact coveragePackageArtifact = (Artifact) dialog.getResult()[0];
- CoveragePackage coveragePackage = OseeCoveragePackageStore.get(coveragePackageArtifact);
- CoverageEditor.open(new CoverageEditorInput(coveragePackageArtifact, coveragePackage));
+ CoverageEditor.open(new CoverageEditorInput(coveragePackageArtifact.getName(), coveragePackageArtifact,
+ null, false));
}
} catch (OseeCoreException ex) {
OseeLog.log(Activator.class, OseeLevel.SEVERE_POPUP, ex);
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditor.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditor.java
index 0033c50c4f2..a0a964caff7 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditor.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditor.java
@@ -12,20 +12,29 @@ package org.eclipse.osee.coverage.editor;
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Collections;
import java.util.List;
import java.util.logging.Level;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.osee.coverage.internal.Activator;
+import org.eclipse.osee.coverage.model.CoveragePackage;
import org.eclipse.osee.coverage.model.CoveragePackageBase;
+import org.eclipse.osee.coverage.store.OseeCoveragePackageStore;
+import org.eclipse.osee.coverage.util.CoverageImage;
import org.eclipse.osee.coverage.util.CoverageUtil;
import org.eclipse.osee.framework.core.exception.OseeCoreException;
import org.eclipse.osee.framework.core.exception.OseeStateException;
+import org.eclipse.osee.framework.core.operation.AbstractOperation;
+import org.eclipse.osee.framework.core.operation.Operations;
import org.eclipse.osee.framework.logging.OseeLevel;
import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.artifact.Artifact;
import org.eclipse.osee.framework.skynet.core.event.FrameworkTransactionData;
import org.eclipse.osee.framework.skynet.core.event.IFrameworkTransactionEventListener;
import org.eclipse.osee.framework.skynet.core.event.Sender;
+import org.eclipse.osee.framework.skynet.core.relation.CoreRelationEnumeration;
+import org.eclipse.osee.framework.skynet.core.relation.RelationManager;
import org.eclipse.osee.framework.ui.plugin.util.AWorkbench;
import org.eclipse.osee.framework.ui.plugin.util.Displays;
import org.eclipse.osee.framework.ui.skynet.ImageManager;
@@ -51,11 +60,75 @@ public class CoverageEditor extends FormEditor implements IActionable, IFramewor
private CoverageEditorImportTab coverageEditorImportTab = null;
private CoverageEditorCoverageTab coverageEditorCoverageTab = null;
private CoverageEditorOverviewTab coverageEditorOverviewTab = null;
+ private CoverageEditorLoadingTab coverageEditorLoadingTab = null;
+ private Collection<Artifact> artifactLoadCache = null;
@Override
protected void addPages() {
try {
OseeContributionItem.addTo(this, true);
+ String loadingStr = "Loading Coverage for " + getCoverageEditorInput().getPreLoadName() + " ...";
+ coverageEditorLoadingTab = new CoverageEditorLoadingTab(loadingStr, this);
+ addFormPage(coverageEditorLoadingTab);
+ setPartName("Loading " + getCoverageEditorInput().getPreLoadName());
+ setTitleImage(ImageManager.getImage(CoverageImage.COVERAGE));
+ setActivePage(startPage);
+ if (getCoverageEditorInput().isInTest()) {
+ (new LoadCoverage(loadingStr)).doWork(null);
+ } else {
+ Operations.executeAsJob(new LoadCoverage(loadingStr), true);
+ }
+ } catch (Exception ex) {
+ OseeLog.log(Activator.class, Level.SEVERE, ex);
+ }
+ }
+
+ private class LoadCoverage extends AbstractOperation {
+
+ public LoadCoverage(String operationName) {
+ super(operationName, Activator.PLUGIN_ID);
+ }
+
+ @Override
+ protected void doWork(IProgressMonitor monitor) throws Exception {
+ if (artifactLoadCache == null) {
+ if (getCoverageEditorInput().getCoveragePackageArtifact() != null) {
+ try {
+ artifactLoadCache =
+ RelationManager.getRelatedArtifacts(
+ Collections.singleton(getCoverageEditorInput().getCoveragePackageArtifact()), 8,
+ CoreRelationEnumeration.DEFAULT_HIERARCHICAL__CHILD);
+ } catch (OseeCoreException ex) {
+ OseeLog.log(Activator.class, OseeLevel.SEVERE, ex);
+ }
+ } else {
+ artifactLoadCache = Collections.emptyList();
+ }
+ }
+ if (getCoverageEditorInput().getCoveragePackageArtifact() != null) {
+ CoveragePackage coveragePackage =
+ OseeCoveragePackageStore.get(getCoverageEditorInput().getCoveragePackageArtifact());
+ getCoverageEditorInput().setCoveragePackageBase(coveragePackage);
+ }
+
+ if (getCoverageEditorInput().isInTest()) {
+ addPagesAfterLoad();
+ } else {
+ Displays.ensureInDisplayThread(new Runnable() {
+ @Override
+ public void run() {
+ addPagesAfterLoad();
+ }
+ });
+ }
+ }
+ };
+
+ protected void addPagesAfterLoad() {
+ try {
+ // remove loading page
+ removePage(0);
+
coverageEditorOverviewTab = new CoverageEditorOverviewTab("Overview", this, getCoveragePackageBase());
addFormPage(coverageEditorOverviewTab);
coverageEditorCoverageTab = new CoverageEditorCoverageTab("Coverage Items", this, getCoveragePackageBase());
@@ -74,7 +147,9 @@ public class CoverageEditor extends FormEditor implements IActionable, IFramewor
}
public void simulateImport(String importName) throws OseeCoreException {
- if (coverageEditorImportTab == null) throw new OseeStateException("Import page == null");
+ if (coverageEditorImportTab == null) {
+ throw new OseeStateException("Import page == null");
+ }
setActivePage(2);
coverageEditorImportTab.simulateImport(importName);
}
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorInput.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorInput.java
index d068ae93672..0b79cb26258 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorInput.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorInput.java
@@ -21,12 +21,16 @@ import org.eclipse.ui.IPersistableElement;
*/
public class CoverageEditorInput implements IEditorInput {
- private final CoveragePackageBase coveragePackageBase;
+ private CoveragePackageBase coveragePackageBase;
private final Artifact coveragePackageArtifact;
+ private final String preLoadName;
+ private final boolean isInTest;
- public CoverageEditorInput(Artifact coveragePackageArtifact, CoveragePackageBase coveragePackageBase) {
+ public CoverageEditorInput(String preLoadName, Artifact coveragePackageArtifact, CoveragePackageBase coveragePackageBase, boolean isInTest) {
+ this.preLoadName = preLoadName;
this.coveragePackageArtifact = coveragePackageArtifact;
this.coveragePackageBase = coveragePackageBase;
+ this.isInTest = isInTest;
}
public boolean exists() {
@@ -53,6 +57,9 @@ public class CoverageEditorInput implements IEditorInput {
@Override
public String getName() {
+ if (coveragePackageBase == null) {
+ return getPreLoadName();
+ }
return coveragePackageBase.getName();
}
@@ -64,4 +71,16 @@ public class CoverageEditorInput implements IEditorInput {
return coveragePackageArtifact;
}
+ public String getPreLoadName() {
+ return preLoadName;
+ }
+
+ public void setCoveragePackageBase(CoveragePackageBase coveragePackageBase) {
+ this.coveragePackageBase = coveragePackageBase;
+ }
+
+ public boolean isInTest() {
+ return isInTest;
+ }
+
}
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorLoadingTab.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorLoadingTab.java
new file mode 100644
index 00000000000..748f10308e1
--- /dev/null
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageEditorLoadingTab.java
@@ -0,0 +1,87 @@
+/*
+ * Created on Feb 5, 2009
+ *
+ * PLACE_YOUR_DISTRIBUTION_STATEMENT_RIGHT_HERE
+ */
+package org.eclipse.osee.coverage.editor;
+
+import org.eclipse.osee.coverage.util.CoverageImage;
+import org.eclipse.osee.framework.ui.plugin.util.Displays;
+import org.eclipse.osee.framework.ui.skynet.ImageManager;
+import org.eclipse.osee.framework.ui.skynet.action.RefreshAction;
+import org.eclipse.osee.framework.ui.skynet.action.RefreshAction.IRefreshActionHandler;
+import org.eclipse.osee.framework.ui.skynet.results.XResultData;
+import org.eclipse.osee.framework.ui.skynet.results.html.XResultsComposite;
+import org.eclipse.osee.framework.ui.swt.ALayout;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.forms.IManagedForm;
+import org.eclipse.ui.forms.editor.FormEditor;
+import org.eclipse.ui.forms.editor.FormPage;
+import org.eclipse.ui.forms.widgets.ScrolledForm;
+
+/**
+ * @author Donald G. Dunne
+ */
+public class CoverageEditorLoadingTab extends FormPage implements IRefreshActionHandler {
+
+ private final CoverageEditor coverageEditor;
+ XResultsComposite xResultsComp;
+
+ public CoverageEditorLoadingTab(String name, CoverageEditor coverageEditor) {
+ super(coverageEditor, name, name);
+ this.coverageEditor = coverageEditor;
+ }
+
+ @Override
+ protected void createFormContent(IManagedForm managedForm) {
+ super.createFormContent(managedForm);
+
+ final ScrolledForm scrolledForm = managedForm.getForm();
+ scrolledForm.setText(getTitle());
+ scrolledForm.setImage(ImageManager.getImage(CoverageImage.COVERAGE));
+
+ scrolledForm.getBody().setLayout(ALayout.getZeroMarginLayout());
+ createToolBar();
+ Composite composite = scrolledForm.getBody();
+ composite.setLayoutData(new GridData(SWT.FILL, SWT.NONE, true, false));
+
+ xResultsComp = new XResultsComposite(composite, SWT.NONE);
+ xResultsComp.setLayoutData(new GridData(GridData.FILL_BOTH | GridData.VERTICAL_ALIGN_BEGINNING));
+ GridData gd = new GridData(GridData.FILL_BOTH);
+ gd.heightHint = 500;
+ xResultsComp.setLayoutData(gd);
+ coverageEditor.getToolkit().adapt(xResultsComp);
+ getManagedForm().getForm().getForm().setBusy(true);
+
+ refreshHtml();
+ }
+
+ public void refreshHtml() {
+ final XResultData rd = new XResultData(false);
+ rd.log(getTitle());
+ Displays.ensureInDisplayThread(new Runnable() {
+ @Override
+ public void run() {
+ xResultsComp.setHtmlText(rd.getReport("").getManipulatedHtml(), "");
+ }
+ });
+ }
+
+ public void createToolBar() {
+ getManagedForm().getForm().getToolBarManager().add(new RefreshAction(this));
+ CoverageEditor.addToToolBar(getManagedForm().getForm().getToolBarManager(), coverageEditor);
+ }
+
+ @Override
+ public FormEditor getEditor() {
+ return super.getEditor();
+ }
+
+ @Override
+ public void refreshActionHandler() {
+ refreshHtml();
+ }
+
+}
diff --git a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageRenderer.java b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageRenderer.java
index db856cbdb88..a4dd1d3c9b6 100644
--- a/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageRenderer.java
+++ b/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/editor/CoverageRenderer.java
@@ -57,7 +57,8 @@ public class CoverageRenderer extends DefaultArtifactRenderer {
public void open(List<Artifact> artifacts) throws OseeCoreException {
for (Artifact artifact : artifacts) {
if (artifact.getArtifactTypeName().equals(OseeCoveragePackageStore.ARTIFACT_NAME)) {
- CoverageEditor.open(new CoverageEditorInput(artifact, OseeCoveragePackageStore.get(artifact)));
+ CoverageEditor.open(new CoverageEditorInput(artifact.getName(), artifact,
+ OseeCoveragePackageStore.get(artifact), false));
}
}
}

Back to the top