Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkwilk2012-01-10 22:35:52 +0000
committerRyan D. Brooks2012-01-10 22:35:52 +0000
commit969e97555ee0bab63242463dc88b4f4bec2e3e7e (patch)
tree2ef92ece789b18329ea754de680c7a79798882d1 /plugins/org.eclipse.osee.coverage
parent3717d2cb4831dcbf0991d86050e196bb3ee8f689 (diff)
downloadorg.eclipse.osee-969e97555ee0bab63242463dc88b4f4bec2e3e7e.tar.gz
org.eclipse.osee-969e97555ee0bab63242463dc88b4f4bec2e3e7e.tar.xz
org.eclipse.osee-969e97555ee0bab63242463dc88b4f4bec2e3e7e.zip
bug[ats_6WFC6]: SkynetTransaction multiple transaction problem
Diffstat (limited to 'plugins/org.eclipse.osee.coverage')
-rw-r--r--plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/ITestUnitProvider.java3
-rw-r--r--plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/SimpleTestUnitProvider.java6
-rw-r--r--plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ArtifactTestUnitStore.java5
-rw-r--r--plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ITestUnitStore.java3
-rw-r--r--plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/OseeCoverageUnitStore.java1
-rw-r--r--plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/TestUnitCache.java27
6 files changed, 30 insertions, 15 deletions
diff --git a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/ITestUnitProvider.java b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/ITestUnitProvider.java
index 9293c236986..c9357fd0cd7 100644
--- a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/ITestUnitProvider.java
+++ b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/ITestUnitProvider.java
@@ -12,6 +12,7 @@ package org.eclipse.osee.coverage.model;
import java.util.Collection;
import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.skynet.core.transaction.SkynetTransaction;
/**
* Allow external mechnism for test units to be provided to UI
@@ -32,4 +33,6 @@ public interface ITestUnitProvider {
public void fromXml(CoverageItem coverageItem, String xml) throws OseeCoreException;
+ public void save(SkynetTransaction transaction) throws OseeCoreException;
+
}
diff --git a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/SimpleTestUnitProvider.java b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/SimpleTestUnitProvider.java
index e0a0ec4cf40..7b61a5d9015 100644
--- a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/SimpleTestUnitProvider.java
+++ b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/model/SimpleTestUnitProvider.java
@@ -14,6 +14,7 @@ import java.util.Collection;
import org.eclipse.osee.framework.jdk.core.type.HashCollection;
import org.eclipse.osee.framework.jdk.core.util.Collections;
import org.eclipse.osee.framework.jdk.core.util.Strings;
+import org.eclipse.osee.framework.skynet.core.transaction.SkynetTransaction;
/**
* Simple provider that optimizes how test units are stored by sharing test unit names.
@@ -70,4 +71,9 @@ public class SimpleTestUnitProvider implements ITestUnitProvider {
coverageItemToTestUnits.removeValue(coverageItem, testUnitName);
}
+ @Override
+ public void save(SkynetTransaction transaction) {
+ // do nothing cause storeage is in memory only
+ }
+
}
diff --git a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ArtifactTestUnitStore.java b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ArtifactTestUnitStore.java
index 8e3000c88b4..112ea9d4673 100644
--- a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ArtifactTestUnitStore.java
+++ b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ArtifactTestUnitStore.java
@@ -26,6 +26,7 @@ import org.eclipse.osee.framework.core.exception.OseeCoreException;
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.skynet.core.transaction.SkynetTransaction;
/**
* @author John Misinco
@@ -56,7 +57,7 @@ public class ArtifactTestUnitStore implements ITestUnitStore {
}
@Override
- public void store(TestUnitCache cache) throws OseeCoreException {
+ public void store(TestUnitCache cache, SkynetTransaction transaction) throws OseeCoreException {
Artifact artifact = getCoverageTestUnitArtifact();
Set<Entry<Integer, String>> entries = cache.getAllCachedTestUnitEntries();
@@ -71,7 +72,7 @@ public class ArtifactTestUnitStore implements ITestUnitStore {
String storage = asStorage(entriesList);
artifact.setSoleAttributeFromString(CoreAttributeTypes.GeneralStringData, storage);
- artifact.persist(getClass().getSimpleName());
+ artifact.persist(transaction);
}
protected String asStorage(List<Entry<Integer, String>> entries) {
diff --git a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ITestUnitStore.java b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ITestUnitStore.java
index e3d3b33571c..6c7142ac0be 100644
--- a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ITestUnitStore.java
+++ b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/ITestUnitStore.java
@@ -11,6 +11,7 @@
package org.eclipse.osee.coverage.store;
import org.eclipse.osee.framework.core.exception.OseeCoreException;
+import org.eclipse.osee.framework.skynet.core.transaction.SkynetTransaction;
/**
* @author John Misinco
@@ -19,6 +20,6 @@ public interface ITestUnitStore {
public void load(TestUnitCache cache) throws OseeCoreException;
- public void store(TestUnitCache cache) throws OseeCoreException;
+ public void store(TestUnitCache cache, SkynetTransaction transaction) throws OseeCoreException;
} \ No newline at end of file
diff --git a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/OseeCoverageUnitStore.java b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/OseeCoverageUnitStore.java
index 9eceb311adb..56e7a58addf 100644
--- a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/OseeCoverageUnitStore.java
+++ b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/OseeCoverageUnitStore.java
@@ -249,6 +249,7 @@ public class OseeCoverageUnitStore extends OseeCoverageStore {
}
coverageEvent.getCoverages().add(change);
}
+ getTestUnitProvider().save(transaction);
return Result.TrueResult;
}
diff --git a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/TestUnitCache.java b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/TestUnitCache.java
index c8b91c9c0e8..33fc7f73285 100644
--- a/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/TestUnitCache.java
+++ b/plugins/org.eclipse.osee.coverage/src/org/eclipse/osee/coverage/store/TestUnitCache.java
@@ -26,6 +26,7 @@ import org.eclipse.osee.framework.jdk.core.type.HashCollection;
import org.eclipse.osee.framework.jdk.core.util.Collections;
import org.eclipse.osee.framework.jdk.core.util.Strings;
import org.eclipse.osee.framework.logging.OseeLog;
+import org.eclipse.osee.framework.skynet.core.transaction.SkynetTransaction;
import com.google.common.collect.HashBiMap;
/**
@@ -156,14 +157,15 @@ public class TestUnitCache implements ITestUnitProvider {
}
@Override
- public String toXml(CoverageItem coverageItem) throws OseeCoreException {
- String toReturn = "";
+ public String toXml(CoverageItem coverageItem) {
+
+ String toReturn = Strings.emptyString();
+
Collection<Integer> values = itemsToTestUnit.getValues(coverageItem);
if (values != null) {
List<Integer> testIdEntries = (List<Integer>) values;
java.util.Collections.sort(testIdEntries);
toReturn = Collections.toString(";", testIdEntries);
- persist();
}
return toReturn;
}
@@ -180,14 +182,6 @@ public class TestUnitCache implements ITestUnitProvider {
itemsToTestUnit.put(coverageItem, entries);
}
- public void persist() throws OseeCoreException {
- ensurePopulated();
- if (cacheIsDirty) {
- testUnitStore.store(this);
- cacheIsDirty = false;
- }
- }
-
private synchronized void ensurePopulated() throws OseeCoreException {
if (!ensurePopulatedRanOnce) {
ensurePopulatedRanOnce = true;
@@ -199,4 +193,13 @@ public class TestUnitCache implements ITestUnitProvider {
}
}
-} \ No newline at end of file
+ @Override
+ public void save(SkynetTransaction transaction) throws OseeCoreException {
+ ensurePopulated();
+ if (cacheIsDirty) {
+ testUnitStore.store(this, transaction);
+ cacheIsDirty = false;
+ }
+ }
+
+}

Back to the top