Return-Path: X-Original-To: apmail-jackrabbit-oak-commits-archive@minotaur.apache.org Delivered-To: apmail-jackrabbit-oak-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9AF5A9DB4 for ; Tue, 20 Mar 2012 17:03:45 +0000 (UTC) Received: (qmail 58566 invoked by uid 500); 20 Mar 2012 17:03:45 -0000 Delivered-To: apmail-jackrabbit-oak-commits-archive@jackrabbit.apache.org Received: (qmail 58544 invoked by uid 500); 20 Mar 2012 17:03:45 -0000 Mailing-List: contact oak-commits-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: oak-commits@jackrabbit.apache.org Delivered-To: mailing list oak-commits@jackrabbit.apache.org Received: (qmail 58536 invoked by uid 99); 20 Mar 2012 17:03:45 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Mar 2012 17:03:45 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Mar 2012 17:03:41 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id F199B2388847; Tue, 20 Mar 2012 17:03:20 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1303000 - in /jackrabbit/oak/trunk/oak-mk/src: main/java/org/apache/jackrabbit/mk/core/Repository.java main/java/org/apache/jackrabbit/mk/store/DefaultRevisionStore.java test/java/org/apache/jackrabbit/mk/store/CopyingGCTest.java Date: Tue, 20 Mar 2012 17:03:20 -0000 To: oak-commits@jackrabbit.apache.org From: jukka@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120320170320.F199B2388847@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: jukka Date: Tue Mar 20 17:03:20 2012 New Revision: 1303000 URL: http://svn.apache.org/viewvc?rev=1303000&view=rev Log: OAK-31: In-memory MicroKernel for testing Make it easier to plug in a custom Persistence instance Modified: jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/core/Repository.java jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/store/DefaultRevisionStore.java jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/CopyingGCTest.java Modified: jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/core/Repository.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/core/Repository.java?rev=1303000&r1=1302999&r2=1303000&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/core/Repository.java (original) +++ jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/core/Repository.java Tue Mar 20 17:03:20 2012 @@ -23,6 +23,7 @@ import org.apache.jackrabbit.mk.model.Co import org.apache.jackrabbit.mk.model.Id; import org.apache.jackrabbit.mk.model.NodeState; import org.apache.jackrabbit.mk.model.StoredCommit; +import org.apache.jackrabbit.mk.persistence.H2Persistence; import org.apache.jackrabbit.mk.store.DefaultRevisionStore; import org.apache.jackrabbit.mk.store.NotFoundException; import org.apache.jackrabbit.mk.store.RevisionStore; @@ -51,7 +52,7 @@ public class Repository { public Repository(RevisionStore rs) { this.homeDir = null; this.rs = rs; - + initialized = true; } @@ -59,8 +60,10 @@ public class Repository { if (initialized) { return; } + DefaultRevisionStore rs = new DefaultRevisionStore(); - rs.initialize(new File(homeDir)); + rs.initialize(new File(homeDir), new H2Persistence()); + this.rs = rs; initialized = true; Modified: jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/store/DefaultRevisionStore.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/store/DefaultRevisionStore.java?rev=1303000&r1=1302999&r2=1303000&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/store/DefaultRevisionStore.java (original) +++ jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/store/DefaultRevisionStore.java Tue Mar 20 17:03:20 2012 @@ -25,7 +25,6 @@ import org.apache.jackrabbit.mk.model.Mu import org.apache.jackrabbit.mk.model.NodeState; import org.apache.jackrabbit.mk.model.StoredCommit; import org.apache.jackrabbit.mk.model.StoredNode; -import org.apache.jackrabbit.mk.persistence.H2Persistence; import org.apache.jackrabbit.mk.persistence.Persistence; import org.apache.jackrabbit.mk.util.SimpleLRUCache; @@ -56,7 +55,7 @@ public class DefaultRevisionStore implem private Map cache; - public void initialize(File homeDir) throws Exception { + public void initialize(File homeDir, Persistence persistence) throws Exception { if (initialized) { throw new IllegalStateException("already initialized"); } @@ -64,11 +63,7 @@ public class DefaultRevisionStore implem cache = Collections.synchronizedMap(SimpleLRUCache.newInstance(determineInitialCacheSize())); - pm = new H2Persistence(); - //pm = new InMemPersistence(); - //pm = new MongoPersistence(); - //pm = new BDbPersistence(); - //pm = new FSPersistence(); + pm = persistence; pm.initialize(homeDir); if (pm instanceof BlobStore) { Modified: jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/CopyingGCTest.java URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/CopyingGCTest.java?rev=1303000&r1=1302999&r2=1303000&view=diff ============================================================================== --- jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/CopyingGCTest.java (original) +++ jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/CopyingGCTest.java Tue Mar 20 17:03:20 2012 @@ -28,6 +28,7 @@ import org.apache.jackrabbit.mk.core.Rep import org.apache.jackrabbit.mk.fs.FileUtils; import org.apache.jackrabbit.mk.json.fast.Jsop; import org.apache.jackrabbit.mk.json.fast.JsopArray; +import org.apache.jackrabbit.mk.persistence.InMemPersistence; import org.apache.jackrabbit.mk.util.IOUtils; import org.junit.After; import org.junit.Before; @@ -61,10 +62,10 @@ public class CopyingGCTest { @Test public void concurrentGC() throws Exception { rsFrom = new DefaultRevisionStore(); - rsFrom.initialize(new File("target/mk1")); + rsFrom.initialize(new File("target/mk1"), new InMemPersistence()); rsTo = new DefaultRevisionStore(); - rsTo.initialize(new File("target/mk2")); + rsTo.initialize(new File("target/mk2"), new InMemPersistence()); final CopyingGC gc = new CopyingGC(rsFrom, rsTo); @@ -100,10 +101,10 @@ public class CopyingGCTest { String[] revs = new String[5]; rsFrom = new DefaultRevisionStore(); - rsFrom.initialize(new File("target/mk1")); + rsFrom.initialize(new File("target/mk1"), new InMemPersistence()); rsTo = new DefaultRevisionStore(); - rsTo.initialize(new File("target/mk2")); + rsTo.initialize(new File("target/mk2"), new InMemPersistence()); CopyingGC gc = new CopyingGC(rsFrom, rsTo);