Author: mreutegg
Date: Wed Sep 13 09:01:57 2017
New Revision: 1808222

URL: http://svn.apache.org/viewvc?rev=1808222&view=rev
Log:
OAK-6654: Remove duplicate code in OakRepositoryStub classes

Modified:
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentMemRepositoryStub.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoNSRepositoryStub.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentTarRepositoryStub.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentMemRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentMemRepositoryStub.java?rev=1808222&r1=1808221&r2=1808222&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentMemRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentMemRepositoryStub.java
 Wed Sep 13 09:01:57 2017
@@ -19,11 +19,9 @@ package org.apache.jackrabbit.oak.jcr;
 import java.util.Properties;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
-import javax.jcr.Session;
 
 import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
 import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
-import 
org.apache.jackrabbit.oak.plugins.document.bundlor.BundlingConfigInitializer;
 import org.apache.jackrabbit.test.RepositoryStubException;
 
 /**
@@ -42,21 +40,15 @@ public class OakDocumentMemRepositoryStu
     public OakDocumentMemRepositoryStub(Properties settings)
             throws RepositoryException {
         super(settings);
-        Session session = null;
         final DocumentNodeStore store;
         try {
             store = new DocumentMK.Builder().getNodeStore();
-            this.repository = new 
Jcr(store).with(getQueryEngineSettings()).with(BundlingConfigInitializer.INSTANCE).createRepository();
-
-            session = getRepository().login(superuser);
-            TestContentLoader loader = new TestContentLoader();
-            loader.loadTestContent(session);
+            Jcr jcr = new Jcr(store);
+            preCreateRepository(jcr);
+            this.repository = jcr.createRepository();
+            loadTestContent(repository);
         } catch (Exception e) {
             throw new RepositoryException(e);
-        } finally {
-            if (session != null) {
-                session.logout();
-            }
         }
         Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
             @Override

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java?rev=1808222&r1=1808221&r2=1808222&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakDocumentRDBRepositoryStub.java
 Wed Sep 13 09:01:57 2017
@@ -24,7 +24,6 @@ import java.util.Properties;
 
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
-import javax.jcr.Session;
 
 import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
 import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
@@ -58,7 +57,6 @@ public class OakDocumentRDBRepositoryStu
     public OakDocumentRDBRepositoryStub(Properties settings) throws 
RepositoryException {
         super(settings);
 
-        Session session = null;
         final DocumentNodeStore m;
         try {
             String prefix = "T" + Long.toHexString(System.currentTimeMillis());
@@ -68,16 +66,12 @@ public class OakDocumentRDBRepositoryStu
                     setPersistentCache("target/persistentCache,time").
                     setRDBConnection(RDBDataSourceFactory.forJdbcUrl(jdbcUrl, 
USERNAME, PASSWD), options).
                     getNodeStore();
-            this.repository = new 
Jcr(m).with(getQueryEngineSettings()).createRepository();
-            session = getRepository().login(superuser);
-            TestContentLoader loader = new TestContentLoader();
-            loader.loadTestContent(session);
+            Jcr jcr = new Jcr(m);
+            preCreateRepository(jcr);
+            this.repository = jcr.createRepository();
+            loadTestContent(repository);
         } catch (Exception e) {
             throw new RepositoryException(e);
-        } finally {
-            if (session != null) {
-                session.logout();
-            }
         }
         Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
             @Override

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoNSRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoNSRepositoryStub.java?rev=1808222&r1=1808221&r2=1808222&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoNSRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakMongoNSRepositoryStub.java
 Wed Sep 13 09:01:57 2017
@@ -19,12 +19,10 @@ package org.apache.jackrabbit.oak.jcr;
 import java.util.Properties;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
-import javax.jcr.Session;
 
 import org.apache.jackrabbit.oak.plugins.document.DocumentMK;
 import org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore;
 import org.apache.jackrabbit.oak.plugins.document.MongoUtils;
-import 
org.apache.jackrabbit.oak.plugins.document.bundlor.BundlingConfigInitializer;
 import org.apache.jackrabbit.oak.plugins.document.util.MongoConnection;
 
 /**
@@ -51,7 +49,6 @@ public class OakMongoNSRepositoryStub ex
      */
     public OakMongoNSRepositoryStub(Properties settings) throws 
RepositoryException {
         super(settings);
-        Session session = null;
         final DocumentNodeStore store;
         try {
             this.connection = MongoUtils.getConnection();
@@ -60,17 +57,12 @@ public class OakMongoNSRepositoryStub ex
                     setPersistentCache("target/persistentCache,time").
                     setMongoDB(connection.getDB()).
                     getNodeStore();
-            this.repository = new 
Jcr(store).with(getQueryEngineSettings()).with(BundlingConfigInitializer.INSTANCE).createRepository();
-
-            session = getRepository().login(superuser);
-            TestContentLoader loader = new TestContentLoader();
-            loader.loadTestContent(session);
+            Jcr jcr = new Jcr(store);
+            preCreateRepository(jcr);
+            this.repository = jcr.createRepository();
+            loadTestContent(repository);
         } catch (Exception e) {
             throw new RepositoryException(e);
-        } finally {
-            if (session != null) {
-                session.logout();
-            }
         }
         Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
             @Override

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java?rev=1808222&r1=1808221&r2=1808222&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakRepositoryStub.java
 Wed Sep 13 09:01:57 2017
@@ -20,9 +20,11 @@ import java.security.Principal;
 import java.util.Properties;
 import javax.jcr.Credentials;
 import javax.jcr.GuestCredentials;
+import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
 
+import 
org.apache.jackrabbit.oak.plugins.document.bundlor.BundlingConfigInitializer;
 import org.apache.jackrabbit.oak.query.QueryEngineSettings;
 import org.apache.jackrabbit.oak.spi.security.principal.EveryonePrincipal;
 import org.apache.jackrabbit.test.NotExecutableException;
@@ -65,4 +67,33 @@ abstract class OakRepositoryStub extends
         return UNKNOWN_PRINCIPAL;
     }
 
+    /**
+     * Override in subclass and perform additional configuration on the
+     * {@link Jcr} builder before the repository is created. This default
+     * implementation set query engine settings as returned by
+     * {@link #getQueryEngineSettings()} and adds a
+     * {@link BundlingConfigInitializer}.
+     *
+     * @param jcr the builder.
+     */
+    protected void preCreateRepository(Jcr jcr) {
+        jcr.with(getQueryEngineSettings());
+        jcr.with(BundlingConfigInitializer.INSTANCE);
+    }
+
+    protected void loadTestContent(Repository repository)
+            throws RepositoryException {
+        Session session = repository.login(superuser);
+        try {
+            TestContentLoader loader = new TestContentLoader();
+            loader.loadTestContent(session);
+        } catch (RepositoryException e) {
+            throw e;
+        } catch (Exception e) {
+            throw new RepositoryException(e);
+        } finally {
+            session.logout();
+        }
+    }
+
 }
\ No newline at end of file

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentTarRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentTarRepositoryStub.java?rev=1808222&r1=1808221&r2=1808222&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentTarRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakSegmentTarRepositoryStub.java
 Wed Sep 13 09:01:57 2017
@@ -22,7 +22,6 @@ import java.io.File;
 import java.util.Properties;
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
-import javax.jcr.Session;
 
 import org.apache.jackrabbit.oak.Oak;
 import org.apache.jackrabbit.oak.segment.SegmentNodeStoreBuilders;
@@ -47,24 +46,15 @@ public class OakSegmentTarRepositoryStub
     public OakSegmentTarRepositoryStub(Properties settings) throws 
RepositoryException {
         super(settings);
 
-        Session session = null;
         try {
             File directory = new File("target", "segment-tar-" + 
System.currentTimeMillis());
             this.store = 
FileStoreBuilder.fileStoreBuilder(directory).withMaxFileSize(1).build();
             Jcr jcr = new Jcr(new 
Oak(SegmentNodeStoreBuilders.builder(store).build()));
-            jcr.with(getQueryEngineSettings());
             preCreateRepository(jcr);
             this.repository = jcr.createRepository();
-
-            session = getRepository().login(superuser);
-            TestContentLoader loader = new TestContentLoader();
-            loader.loadTestContent(session);
+            loadTestContent(repository);
         } catch (Exception e) {
             throw new RepositoryException(e);
-        } finally {
-            if (session != null) {
-                session.logout();
-            }
         }
         Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
             @Override
@@ -75,15 +65,6 @@ public class OakSegmentTarRepositoryStub
     }
 
     /**
-     * Override in base class and perform additional configuration on the
-     * {@link Jcr} builder before the repository is created.
-     *
-     * @param jcr the builder.
-     */
-    protected void preCreateRepository(Jcr jcr) {
-    }
-
-    /**
      * Returns the configured repository instance.
      *
      * @return the configured repository instance.

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java?rev=1808222&r1=1808221&r2=1808222&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
 Wed Sep 13 09:01:57 2017
@@ -21,7 +21,6 @@ import java.util.Properties;
 
 import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
-import javax.jcr.Session;
 
 import org.apache.jackrabbit.oak.Oak;
 import org.apache.jackrabbit.oak.segment.SegmentNodeStoreBuilders;
@@ -48,25 +47,16 @@ public class OakTarMKRepositoryStub exte
     public OakTarMKRepositoryStub(Properties settings) throws 
RepositoryException {
         super(settings);
 
-        Session session = null;
         try {
             File directory =
                     new File("target", "tarmk-" + System.currentTimeMillis());
             this.store = 
FileStoreBuilder.fileStoreBuilder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
             Jcr jcr = new Jcr(new 
Oak(SegmentNodeStoreBuilders.builder(store).build()));
-            jcr.with(getQueryEngineSettings());
             preCreateRepository(jcr);
             this.repository = jcr.createRepository();
-
-            session = getRepository().login(superuser);
-            TestContentLoader loader = new TestContentLoader();
-            loader.loadTestContent(session);
+            loadTestContent(repository);
         } catch (Exception e) {
             throw new RepositoryException(e);
-        } finally {
-            if (session != null) {
-                session.logout();
-            }
         }
         Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
             @Override
@@ -77,15 +67,6 @@ public class OakTarMKRepositoryStub exte
     }
 
     /**
-     * Override in base class and perform additional configuration on the
-     * {@link Jcr} builder before the repository is created.
-     *
-     * @param jcr the builder.
-     */
-    protected void preCreateRepository(Jcr jcr) {
-    }
-
-    /**
      * Returns the configured repository instance.
      *
      * @return the configured repository instance.


Reply via email to