Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Roldan Betancort2011-02-23 13:05:01 +0000
committerVictor Roldan Betancort2011-02-23 13:05:01 +0000
commitee1c7f5f965eee0d8e1b193be55880c4a359db3c (patch)
treea9da203b5a8972f1d7f92d23645f631eb6e1e5db /plugins
parent6ffd7fcb85da9b16a093d1bbe151eb7d6b3d8330 (diff)
downloadcdo-ee1c7f5f965eee0d8e1b193be55880c4a359db3c.tar.gz
cdo-ee1c7f5f965eee0d8e1b193be55880c4a359db3c.tar.xz
cdo-ee1c7f5f965eee0d8e1b193be55880c4a359db3c.zip
- DB4OStore now persists lastCommitTime
- Moved MEMDB4OStore from org.eclipse.emf.cdo.server.db4o to org.eclipse.emf.cdo.tests.db4o
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/DB4OStore.java25
-rw-r--r--plugins/org.eclipse.emf.cdo.tests.db4o/META-INF/MANIFEST.MF2
-rw-r--r--plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/AllTestsDB4O.java9
-rw-r--r--plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/MEMDB4OStore.java (renamed from plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/MEMDB4OStore.java)11
4 files changed, 40 insertions, 7 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/DB4OStore.java b/plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/DB4OStore.java
index 3fbc73f0e1..e7673c9b63 100644
--- a/plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/DB4OStore.java
+++ b/plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/DB4OStore.java
@@ -160,6 +160,8 @@ public class DB4OStore extends LongIDStore implements IDB4OStore
{
super.doActivate();
initObjectServer();
+ initServerInfo();
+ setLastCommitTime(getServerInfo().getLastCommitTime());
}
protected void initObjectServer()
@@ -171,7 +173,6 @@ public class DB4OStore extends LongIDStore implements IDB4OStore
}
server = Db4o.openServer(configuration, storeLocation, port);
- getServerInfo();
}
protected void tearDownObjectServer()
@@ -252,6 +253,16 @@ public class DB4OStore extends LongIDStore implements IDB4OStore
protected void doDeactivate() throws Exception
{
tearDownObjectServer();
+ ObjectContainer container = openClient();
+ try
+ {
+ getServerInfo().setLastCommitTime(getLastCommitTime());
+ commitServerInfo(container);
+ }
+ finally
+ {
+ closeClient(container);
+ }
super.doDeactivate();
}
@@ -344,6 +355,8 @@ public class DB4OStore extends LongIDStore implements IDB4OStore
private long creationTime;
+ private long lastCommitTime;
+
private Map<String, String> properties = new HashMap<String, String>();
public boolean isFirstTime()
@@ -376,5 +389,15 @@ public class DB4OStore extends LongIDStore implements IDB4OStore
{
return properties;
}
+
+ public long getLastCommitTime()
+ {
+ return lastCommitTime;
+ }
+
+ public void setLastCommitTime(long lastCommitTime)
+ {
+ this.lastCommitTime = lastCommitTime;
+ }
}
}
diff --git a/plugins/org.eclipse.emf.cdo.tests.db4o/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.cdo.tests.db4o/META-INF/MANIFEST.MF
index 95c7361dc0..d06a359a5d 100644
--- a/plugins/org.eclipse.emf.cdo.tests.db4o/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.cdo.tests.db4o/META-INF/MANIFEST.MF
@@ -9,3 +9,5 @@ Require-Bundle: org.eclipse.emf.cdo.tests;bundle-version="3.0.0",
Bundle-Vendor: %providerName
Export-Package: com.eclipse.emf.cdo.test.db4o;version="1.0.0"
Bundle-Localization: plugin
+Import-Package: com.db4o;version="[7.4.0,8.0.0)",
+ com.db4o.ext;version="[7.4.0,8.0.0)"
diff --git a/plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/AllTestsDB4O.java b/plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/AllTestsDB4O.java
index 0ffa57e412..f00822f3b2 100644
--- a/plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/AllTestsDB4O.java
+++ b/plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/AllTestsDB4O.java
@@ -12,8 +12,8 @@ package com.eclipse.emf.cdo.test.db4o;
import org.eclipse.emf.cdo.server.IRepository;
import org.eclipse.emf.cdo.server.IStore;
-import org.eclipse.emf.cdo.server.internal.db4o.MEMDB4OStore;
import org.eclipse.emf.cdo.tests.AllConfigs;
+import org.eclipse.emf.cdo.tests.bugzilla.Bugzilla_261218_Test;
import org.eclipse.emf.cdo.tests.config.impl.ConfigTest;
import org.eclipse.emf.cdo.tests.config.impl.RepositoryConfig;
@@ -38,9 +38,9 @@ public class AllTestsDB4O extends AllConfigs
{
super.initTestClasses(testClasses);
- // Added here testcases to skip, example:
- // testClasses.remove(Bugzilla_261218_Test.class);
- // testClasses.remove(Bugzilla_316444_Test.class);
+ // Added here testcases to skip
+ // takes too much
+ testClasses.remove(Bugzilla_261218_Test.class);
}
@Override
@@ -80,6 +80,7 @@ public class AllTestsDB4O extends AllConfigs
@Override
protected IStore createStore(String repoName)
{
+ MEMDB4OStore.clearContainer();
return new MEMDB4OStore();
}
}
diff --git a/plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/MEMDB4OStore.java b/plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/MEMDB4OStore.java
index d7eff1c621..3e53b53b71 100644
--- a/plugins/org.eclipse.emf.cdo.server.db4o/src/org/eclipse/emf/cdo/server/internal/db4o/MEMDB4OStore.java
+++ b/plugins/org.eclipse.emf.cdo.tests.db4o/src/com/eclipse/emf/cdo/test/db4o/MEMDB4OStore.java
@@ -9,7 +9,9 @@
* Victor Roldan Betancort - initial API and implementation
*/
-package org.eclipse.emf.cdo.server.internal.db4o;
+package com.eclipse.emf.cdo.test.db4o;
+
+import org.eclipse.emf.cdo.server.internal.db4o.DB4OStore;
import com.db4o.ObjectContainer;
import com.db4o.ext.ExtDb4o;
@@ -23,7 +25,7 @@ import com.db4o.ext.MemoryFile;
public final class MEMDB4OStore extends DB4OStore
{
- private ObjectContainer objectContainer;
+ private static ObjectContainer objectContainer;
public MEMDB4OStore()
{
@@ -57,4 +59,9 @@ public final class MEMDB4OStore extends DB4OStore
{
// no server is defined. Objects are mantained in-memory in ObjectContainer instances
}
+
+ public static void clearContainer()
+ {
+ objectContainer = ExtDb4o.openMemoryFile(new MemoryFile());
+ }
}

Back to the top