Author: frm
Date: Tue Apr 12 11:45:05 2016
New Revision: 1738778

URL: http://svn.apache.org/viewvc?rev=1738778&view=rev
Log:
OAK-3840 - Always use a Builder to create an instance of FileStore

Removed:
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/NonCachingFileStore.java
Modified:
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/LargeOperationIT.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/OakTarMKRepositoryStub.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ReferenceBinaryIT.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RefreshOnGCTest.java
    
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/nodetype/UpgradeTest.java
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneBlobCacheTest.java
    
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/OakDirectoryTest.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/console/Console.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreDiff.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreHelper.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreRevisionRecovery.java
    
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackup.java
    
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreRestore.java
    
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
    
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
    
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/ConsistencyChecker.java
    
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/RevisionHistory.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackupTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionAndCleanupIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionMapTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/ExternalBlobIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/HeavyWriteIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/PartialCompactionMapTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentCompactionIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentDataStoreBlobGCIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentGraphTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentOverflowExceptionIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentVersionTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/CompactionEstimatorTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/ExternalBlobReferenceTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreStatsTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/JournalEntryTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/LargeNumberOfPropertiesTestIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/SegmentReferenceLimitTestIT.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/migration/ExternalToExternalMigrationTest.java
    
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/migration/SegmentToExternalMigrationTest.java
    
jackrabbit/oak/trunk/oak-tarmk-standby/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentTestUtils.java
    
jackrabbit/oak/trunk/oak-tarmk-standby/src/test/java/org/apache/jackrabbit/oak/plugins/segment/standby/DataStoreTestBase.java
    
jackrabbit/oak/trunk/oak-tarmk-standby/src/test/java/org/apache/jackrabbit/oak/plugins/segment/standby/TestBase.java
    
jackrabbit/oak/trunk/oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/cli/node/SegmentFactory.java
    
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/IncludeExcludeSidegradeTest.java
    
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/RepeatedRepositorySidegradeTest.java
    
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/RepeatedRepositoryUpgradeTest.java
    
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/UpgradeFromTwoSourcesTest.java
    
jackrabbit/oak/trunk/oak-upgrade/src/test/java/org/apache/jackrabbit/oak/upgrade/cli/container/SegmentNodeStoreContainer.java

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/LargeOperationIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/LargeOperationIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/LargeOperationIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/LargeOperationIT.java
 Tue Apr 12 11:45:05 2016
@@ -136,7 +136,7 @@ public class LargeOperationIT {
     @Parameterized.Parameters
     public static Collection<Object[]> fixtures() throws IOException {
         File file = new File(new File("target"), "tar." + System.nanoTime());
-        SegmentStore segmentStore = new FileStore(file, 266, true);
+        SegmentStore segmentStore = 
FileStore.builder(file).withMaxFileSize(256).withMemoryMapping(true).build();
 
         List<Object[]> fixtures = Lists.newArrayList();
         SegmentFixture segmentFixture = new SegmentFixture(segmentStore);

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=1738778&r1=1738777&r2=1738778&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
 Tue Apr 12 11:45:05 2016
@@ -49,7 +49,7 @@ public class OakTarMKRepositoryStub exte
         try {
             File directory =
                     new File("target", "tarmk-" + System.currentTimeMillis());
-            this.store = new FileStore(directory, 1, false);
+            this.store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
             Jcr jcr = new Jcr(new Oak(new SegmentNodeStore(store)));
             QueryEngineSettings qs = new QueryEngineSettings();
             qs.setFullTextComparisonWithoutIndex(true);

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ReferenceBinaryIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ReferenceBinaryIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ReferenceBinaryIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ReferenceBinaryIT.java
 Tue Apr 12 11:45:05 2016
@@ -136,7 +136,11 @@ public class ReferenceBinaryIT {
     @Parameterized.Parameters
     public static Collection<Object[]> fixtures() throws IOException {
         File file = getTestDir("tar");
-        SegmentStore segmentStore = new FileStore(createBlobStore(), file, 
266, true);
+        SegmentStore segmentStore = FileStore.builder(file)
+                .withBlobStore(createBlobStore())
+                .withMaxFileSize(256)
+                .withMemoryMapping(true)
+                .build();
 
         List<Object[]> fixtures = Lists.newArrayList();
         SegmentFixture segmentFixture = new SegmentFixture(segmentStore);
@@ -146,7 +150,11 @@ public class ReferenceBinaryIT {
 
         FileBlobStore fbs = new 
FileBlobStore(getTestDir("fbs1").getAbsolutePath());
         fbs.setReferenceKeyPlainText("foobar");
-        SegmentStore segmentStoreWithFBS =  new FileStore(fbs, 
getTestDir("tar2"), 266, true);
+        SegmentStore segmentStoreWithFBS = 
FileStore.builder(getTestDir("tar2"))
+                .withBlobStore(fbs)
+                .withMaxFileSize(256)
+                .withMemoryMapping(true)
+                .build();
         SegmentFixture segmentFixtureFBS = new 
SegmentFixture(segmentStoreWithFBS);
         if (segmentFixtureFBS.isAvailable()) {
             fixtures.add(new Object[] {segmentFixtureFBS});

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RefreshOnGCTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RefreshOnGCTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RefreshOnGCTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/RefreshOnGCTest.java
 Tue Apr 12 11:45:05 2016
@@ -21,7 +21,6 @@ package org.apache.jackrabbit.oak.jcr;
 
 import static java.io.File.createTempFile;
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.CleanupType.CLEAN_NONE;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 import static org.junit.Assert.assertTrue;
 
 import java.io.File;
@@ -89,9 +88,9 @@ public class RefreshOnGCTest {
             }
         };
         strategy.setPersistCompactionMap(usePersistedMap);
-        fileStore = newFileStore(directory)
+        fileStore = FileStore.builder(directory)
                 .withGCMonitor(gcMonitor)
-                .create()
+                .build()
                 .setCompactionStrategy(strategy);
 
         NodeStore nodeStore = new SegmentNodeStore(fileStore);

Modified: 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/nodetype/UpgradeTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/nodetype/UpgradeTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/nodetype/UpgradeTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/nodetype/UpgradeTest.java
 Tue Apr 12 11:45:05 2016
@@ -37,12 +37,12 @@ import org.apache.jackrabbit.api.Jackrab
 import org.apache.jackrabbit.commons.cnd.CndImporter;
 import org.apache.jackrabbit.oak.jcr.Jcr;
 import org.apache.jackrabbit.oak.plugins.segment.SegmentStore;
+import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
 import org.junit.Test;
 
 import net.lingala.zip4j.core.ZipFile;
 
 import static 
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.newSegmentNodeStore;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
@@ -62,7 +62,7 @@ public class UpgradeTest {
         repoZip.extractAll(testFolder.getPath());
         tmpZip.delete();
 
-        SegmentStore store = newFileStore(repoHome).create();
+        SegmentStore store = FileStore.builder(repoHome).build();
         Repository repo = new 
Jcr(newSegmentNodeStore(store).create()).createRepository();
         Session s = repo.login(new SimpleCredentials("admin", 
"admin".toCharArray()));
 

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneBlobCacheTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneBlobCacheTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneBlobCacheTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/LuceneBlobCacheTest.java
 Tue Apr 12 11:45:05 2016
@@ -63,10 +63,10 @@ public class LuceneBlobCacheTest {
     public void setUp() throws Exception {
         fileDataStore = new ReadAccessCountingDataStore();
         fileDataStore.init(tempFolder.newFolder().getAbsolutePath());
-        FileStore.Builder fileStoreBuilder = 
FileStore.newFileStore(tempFolder.newFolder())
+        FileStore.Builder fileStoreBuilder = 
FileStore.builder(tempFolder.newFolder())
                                         .withBlobStore(new 
DataStoreBlobStore(fileDataStore)).withMaxFileSize(256)
                                         
.withCacheSize(64).withMemoryMapping(false);
-        store = fileStoreBuilder.create();
+        store = fileStoreBuilder.build();
         NodeStore nodeStore = new SegmentNodeStore(store);
         root = nodeStore.getRoot();
         builder = root.builder();

Modified: 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/OakDirectoryTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/OakDirectoryTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/OakDirectoryTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-lucene/src/test/java/org/apache/jackrabbit/oak/plugins/index/lucene/OakDirectoryTest.java
 Tue Apr 12 11:45:05 2016
@@ -315,10 +315,10 @@ public class OakDirectoryTest {
 
     @Test
     public void largeFile() throws Exception{
-        FileStore store = FileStore.newFileStore(tempFolder.getRoot())
+        FileStore store = FileStore.builder(tempFolder.getRoot())
                 .withMemoryMapping(false)
                 .withBlobStore(new BlackHoleBlobStore())
-                .create();
+                .build();
         SegmentNodeStore nodeStore = 
SegmentNodeStore.newSegmentNodeStore(store).create();
         IndexDefinition defn = new IndexDefinition(INITIAL_CONTENT, 
EmptyNodeState.EMPTY_NODE);
         Directory directory = new OakDirectory(nodeStore.getRoot().builder(), 
defn, false);
@@ -370,10 +370,10 @@ public class OakDirectoryTest {
     @Test
     public void dirNameInException_Writes() throws Exception{
         FailOnDemandBlobStore blobStore = new FailOnDemandBlobStore();
-        FileStore store = FileStore.newFileStore(tempFolder.getRoot())
+        FileStore store = FileStore.builder(tempFolder.getRoot())
                 .withMemoryMapping(false)
                 .withBlobStore(blobStore)
-                .create();
+                .build();
         SegmentNodeStore nodeStore = 
SegmentNodeStore.newSegmentNodeStore(store).create();
 
         String indexPath = "/foo/bar";

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/console/Console.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/console/Console.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/console/Console.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/console/Console.java
 Tue Apr 12 11:45:05 2016
@@ -95,8 +95,7 @@ public class Console {
                     setClusterId(clusterId.value(options)).getNodeStore();
             fixture = new MongoFixture(store);
         } else {
-            fixture = new SegmentFixture(new FileStore(
-                    new File(nonOptions.get(0)), 256));
+            fixture = new SegmentFixture(FileStore.builder(new 
File(nonOptions.get(0))).withMaxFileSize(256).build());
         }
 
         List<String> scriptArgs = nonOptions.size() > 1 ?

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/explorer/NodeStoreTree.java
 Tue Apr 12 11:45:05 2016
@@ -115,7 +115,7 @@ public class NodeStoreTree extends JPane
     }
 
     private void refreshStore() throws IOException {
-        this.store = new ReadOnlyStore(path);
+        this.store = FileStore.builder(path).buildReadOnly();
     }
 
     private void refreshModel() {

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/fixture/OakFixture.java
 Tue Apr 12 11:45:05 2016
@@ -345,7 +345,11 @@ public abstract class OakFixture {
 
         @Override
         public Oak getOak(int clusterId) throws Exception {
-            FileStore fs = new FileStore(base, maxFileSizeMB, cacheSizeMB, 
memoryMapping);
+            FileStore fs = FileStore.builder(base)
+                    .withMaxFileSize(maxFileSizeMB)
+                    .withCacheSize(cacheSizeMB)
+                    .withMemoryMapping(memoryMapping)
+                    .build();
             return newOak(new SegmentNodeStore(fs));
         }
 
@@ -364,10 +368,13 @@ public abstract class OakFixture {
                     blobStore = blobStoreFixtures[i].setUp();
                 }
 
-                stores[i] = new FileStore(blobStore,
-                        new File(base, unique),
-                        EmptyNodeState.EMPTY_NODE,
-                        maxFileSizeMB, cacheSizeMB, memoryMapping);
+                stores[i] = FileStore.builder(new File(base, unique))
+                        .withBlobStore(blobStore)
+                        .withRoot(EmptyNodeState.EMPTY_NODE)
+                        .withMaxFileSize(maxFileSizeMB)
+                        .withCacheSize(cacheSizeMB)
+                        .withMemoryMapping(memoryMapping)
+                        .build();
                 cluster[i] = newOak(new SegmentNodeStore(stores[i]));
             }
             return cluster;
@@ -397,4 +404,4 @@ public abstract class OakFixture {
        return new 
Oak(nodeStore).with(ManagementFactory.getPlatformMBeanServer());
     }    
 
-}
\ No newline at end of file
+}

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreDiff.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreDiff.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreDiff.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreDiff.java
 Tue Apr 12 11:45:05 2016
@@ -40,18 +40,17 @@ import java.io.PrintWriter;
 import java.util.Iterator;
 import java.util.List;
 
+import com.google.common.base.Function;
 import joptsimple.OptionParser;
 import joptsimple.OptionSet;
 import joptsimple.OptionSpec;
-
 import org.apache.jackrabbit.oak.api.Blob;
 import org.apache.jackrabbit.oak.api.PropertyState;
+import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore.ReadOnlyStore;
 import org.apache.jackrabbit.oak.spi.state.NodeState;
 import org.apache.jackrabbit.oak.spi.state.NodeStateDiff;
 
-import com.google.common.base.Function;
-
 public class FileStoreDiff {
 
     public static void main(String[] args) throws Exception {
@@ -139,7 +138,7 @@ public class FileStoreDiff {
                     + "'.");
             return;
         }
-        ReadOnlyStore store = new ReadOnlyStore(dir, 
newBasicReadOnlyBlobStore());
+        ReadOnlyStore store = 
FileStore.builder(dir).withBlobStore(newBasicReadOnlyBlobStore()).buildReadOnly();
         RecordId idL = null;
         RecordId idR = null;
         try {

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreHelper.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreHelper.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreHelper.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/FileStoreHelper.java
 Tue Apr 12 11:45:05 2016
@@ -24,12 +24,9 @@ import static com.google.common.collect.
 import static java.util.Collections.reverseOrder;
 import static java.util.Collections.sort;
 import static 
org.apache.jackrabbit.oak.plugins.segment.SegmentVersion.LATEST_VERSION;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 
-import java.io.ByteArrayInputStream;
 import java.io.File;
 import java.io.IOException;
-import java.io.InputStream;
 import java.util.AbstractMap.SimpleImmutableEntry;
 import java.util.ArrayDeque;
 import java.util.Deque;
@@ -208,29 +205,34 @@ public final class FileStoreHelper {
 
     public static FileStore openFileStore(String directory, boolean force)
             throws IOException {
-        return newFileStore(checkFileStoreVersionOrFail(directory, force))
+        return FileStore.builder(checkFileStoreVersionOrFail(directory, force))
                 .withCacheSize(TAR_SEGMENT_CACHE_SIZE)
-                .withMemoryMapping(TAR_STORAGE_MEMORY_MAPPED).create();
+                .withMemoryMapping(TAR_STORAGE_MEMORY_MAPPED).build();
     }
 
     public static FileStore openFileStore(String directory, boolean force,
             BlobStore blobStore) throws IOException {
-        return newFileStore(checkFileStoreVersionOrFail(directory, force))
+        return FileStore.builder(checkFileStoreVersionOrFail(directory, force))
                 .withCacheSize(TAR_SEGMENT_CACHE_SIZE)
                 .withMemoryMapping(TAR_STORAGE_MEMORY_MAPPED)
-                .withBlobStore(blobStore).create();
+                .withBlobStore(blobStore).build();
     }
 
     public static ReadOnlyStore openReadOnlyFileStore(File directory)
             throws IOException {
-        return new ReadOnlyStore(isValidFileStoreOrFail(directory),
-                TAR_SEGMENT_CACHE_SIZE, TAR_STORAGE_MEMORY_MAPPED);
+        return FileStore.builder(isValidFileStoreOrFail(directory))
+                .withCacheSize(TAR_SEGMENT_CACHE_SIZE)
+                .withMemoryMapping(TAR_STORAGE_MEMORY_MAPPED)
+                .buildReadOnly();
     }
 
     public static ReadOnlyStore openReadOnlyFileStore(File directory,
             BlobStore blobStore) throws IOException {
-        return new ReadOnlyStore(isValidFileStoreOrFail(directory),
-                TAR_SEGMENT_CACHE_SIZE, TAR_STORAGE_MEMORY_MAPPED, blobStore);
+        return FileStore.builder(isValidFileStoreOrFail(directory))
+                .withCacheSize(TAR_SEGMENT_CACHE_SIZE)
+                .withMemoryMapping(TAR_STORAGE_MEMORY_MAPPED)
+                .withBlobStore(blobStore)
+                .buildReadOnly();
     }
 
     public static BlobStore newBasicReadOnlyBlobStore() {

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreRevisionRecovery.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreRevisionRecovery.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreRevisionRecovery.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreRevisionRecovery.java
 Tue Apr 12 11:45:05 2016
@@ -35,10 +35,10 @@ import java.util.SortedMap;
 import java.util.UUID;
 import java.util.concurrent.atomic.AtomicLong;
 
+import com.google.common.collect.ImmutableSet;
 import joptsimple.OptionParser;
 import joptsimple.OptionSet;
 import joptsimple.OptionSpec;
-
 import org.apache.jackrabbit.oak.plugins.segment.RecordId;
 import org.apache.jackrabbit.oak.plugins.segment.RecordType;
 import org.apache.jackrabbit.oak.plugins.segment.Segment;
@@ -49,8 +49,6 @@ import org.apache.jackrabbit.oak.plugins
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore.ReadOnlyStore;
 import org.apache.jackrabbit.oak.plugins.segment.memory.MemoryStore;
 
-import com.google.common.collect.ImmutableSet;
-
 public class FileStoreRevisionRecovery {
 
     @SuppressWarnings("deprecation")
@@ -104,12 +102,7 @@ public class FileStoreRevisionRecovery {
             SortedMap<String, UUID> candidates, final SegmentVersion version)
             throws IOException {
 
-        ReadOnlyStore store = new ReadOnlyStore(dir) {
-            @Override
-            public SegmentVersion getVersion() {
-                return version;
-            }
-        };
+        ReadOnlyStore store = 
FileStore.builder(dir).withSegmentVersion(version).buildReadOnly();
 
         final SortedMap<String, String> roots = newTreeMap(reverseOrder());
 

Modified: 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackup.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackup.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackup.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackup.java
 Tue Apr 12 11:45:05 2016
@@ -19,7 +19,6 @@
 package org.apache.jackrabbit.oak.plugins.backup;
 
 import static com.google.common.base.Preconditions.checkArgument;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 
 import java.io.File;
 import java.io.IOException;
@@ -48,12 +47,12 @@ public class FileStoreBackup {
         checkArgument(store instanceof SegmentNodeStore);
         Stopwatch watch = Stopwatch.createStarted();
         NodeState current = ((SegmentNodeStore) store).getSuperRoot();
-        FileStore.Builder builder = newFileStore(destination)
+        FileStore.Builder builder = FileStore.builder(destination)
                 .withDefaultMemoryMapping();
         if (USE_FAKE_BLOBSTORE) {
             builder.withBlobStore(new BasicReadOnlyBlobStore());
         }
-        FileStore backup = builder.create();
+        FileStore backup = builder.build();
         try {
             SegmentNodeState state = backup.getHead();
             Compactor compactor = new Compactor(backup.getTracker());

Modified: 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreRestore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreRestore.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreRestore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreRestore.java
 Tue Apr 12 11:45:05 2016
@@ -18,11 +18,10 @@
  */
 package org.apache.jackrabbit.oak.plugins.backup;
 
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
-
 import java.io.File;
 import java.io.IOException;
 
+import com.google.common.base.Stopwatch;
 import org.apache.jackrabbit.oak.plugins.segment.Compactor;
 import org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
@@ -31,8 +30,6 @@ import org.apache.jackrabbit.oak.spi.sta
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.base.Stopwatch;
-
 public class FileStoreRestore {
 
     private static final Logger log = LoggerFactory
@@ -49,10 +46,10 @@ public class FileStoreRestore {
                     + " is not a valid FileStore directory");
         }
 
-        FileStore restore = new ReadOnlyStore(source);
+        FileStore restore = FileStore.builder(source).buildReadOnly();
         Stopwatch watch = Stopwatch.createStarted();
 
-        FileStore store = newFileStore(destination).create();
+        FileStore store = FileStore.builder(destination).build();
         SegmentNodeState current = store.getHead();
         try {
             Compactor compactor = new Compactor(store.getTracker());

Modified: 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/SegmentNodeStoreService.java
 Tue Apr 12 11:45:05 2016
@@ -371,7 +371,7 @@ public class SegmentNodeStoreService ext
 
         // Build the FileStore
 
-        Builder builder = FileStore.newFileStore(getDirectory())
+        Builder builder = FileStore.builder(getDirectory())
                 .withCacheSize(getCacheSize())
                 .withMaxFileSize(getMaxFileSize())
                 .withMemoryMapping(getMode().equals("64"))
@@ -383,7 +383,7 @@ public class SegmentNodeStoreService ext
             builder.withBlobStore(blobStore);
         }
 
-        store = builder.create();
+        store = builder.build();
 
         // Create a compaction strategy
 

Modified: 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStore.java
 Tue Apr 12 11:45:05 2016
@@ -184,7 +184,7 @@ public class FileStore implements Segmen
     /**
      * Version of the segment storage format.
      */
-    private final SegmentVersion version = SegmentVersion.V_11;
+    private final SegmentVersion version;
 
     /**
      * {@code GCMonitor} monitoring this instance's gc progress
@@ -217,7 +217,7 @@ public class FileStore implements Segmen
      * @return a new {@link Builder} instance.
      */
     @Nonnull
-    public static Builder newFileStore(@Nonnull File directory) {
+    public static Builder builder(@Nonnull File directory) {
         return new Builder(checkNotNull(directory));
     }
 
@@ -225,15 +225,25 @@ public class FileStore implements Segmen
      * Builder for creating {@link FileStore} instances.
      */
     public static class Builder {
+
         private final File directory;
+
         private BlobStore blobStore;   // null ->  store blobs inline
+
         private NodeState root = EMPTY_NODE;
+
         private int maxFileSize = 256;
+
         private int cacheSize;   // 0 -> DEFAULT_MEMORY_CACHE_SIZE
+
         private boolean memoryMapping;
+
         private final LoggingGCMonitor gcMonitor = new LoggingGCMonitor();
+
         private StatisticsProvider statsProvider = StatisticsProvider.NOOP;
 
+        private SegmentVersion version = SegmentVersion.LATEST_VERSION;
+
         private Builder(File directory) {
             this.directory = directory;
         }
@@ -335,7 +345,10 @@ public class FileStore implements Segmen
             return this;
         }
 
-        /**
+        public Builder withSegmentVersion(SegmentVersion version) {
+            this.version = checkNotNull(version);
+            return this;
+        }
 
         /**
          * Create a new {@link FileStore} instance with the settings specified 
in this
@@ -355,79 +368,40 @@ public class FileStore implements Segmen
          * @throws IOException
          */
         @Nonnull
-        public FileStore create() throws IOException {
-            return new FileStore(
-                    blobStore, directory, root, maxFileSize, cacheSize, 
memoryMapping, gcMonitor, statsProvider, false);
+        public FileStore build() throws IOException {
+            return new FileStore(this, false);
         }
-    }
 
-    @Deprecated
-    public FileStore(BlobStore blobStore, File directory, int maxFileSizeMB, 
boolean memoryMapping)
-            throws IOException {
-        this(blobStore, directory, EMPTY_NODE, maxFileSizeMB, 0, memoryMapping,
-                GCMonitor.EMPTY, StatisticsProvider.NOOP, false);
-    }
-
-    @Deprecated
-    public FileStore(File directory, int maxFileSizeMB, boolean memoryMapping)
-            throws IOException {
-        this(null, directory, maxFileSizeMB, memoryMapping);
-    }
-
-    @Deprecated
-    public FileStore(File directory, int maxFileSizeMB)
-            throws IOException {
-        this(null, directory, maxFileSizeMB, MEMORY_MAPPING_DEFAULT);
-    }
-
-    @Deprecated
-    public FileStore(File directory, int maxFileSizeMB, int cacheSizeMB,
-            boolean memoryMapping) throws IOException {
-        this(null, directory, EMPTY_NODE, maxFileSizeMB, cacheSizeMB, 
memoryMapping,
-                GCMonitor.EMPTY, StatisticsProvider.NOOP, false);
-    }
-
-    @Deprecated
-    FileStore(File directory, NodeState initial, int maxFileSize) throws 
IOException {
-        this(null, directory, initial, maxFileSize, -1, MEMORY_MAPPING_DEFAULT,
-                GCMonitor.EMPTY, StatisticsProvider.NOOP, false);
-    }
+        public ReadOnlyStore buildReadOnly() throws IOException {
+            return new ReadOnlyStore(this);
+        }
 
-    @Deprecated
-    public FileStore(
-            BlobStore blobStore, final File directory, NodeState initial, int 
maxFileSizeMB,
-            int cacheSizeMB, boolean memoryMapping) throws IOException {
-        this(blobStore, directory, initial, maxFileSizeMB, cacheSizeMB, 
memoryMapping,
-                GCMonitor.EMPTY, StatisticsProvider.NOOP,false);
     }
 
-    private FileStore(
-            BlobStore blobStore, final File directory, NodeState initial, int 
maxFileSizeMB,
-            int cacheSizeMB, boolean memoryMapping, GCMonitor gcMonitor, 
StatisticsProvider statsProvider,
-            boolean  readonly)
-            throws IOException {
+    private FileStore(Builder builder, boolean readOnly) throws IOException {
+        this.version = builder.version;
 
-        if (readonly) {
-            checkNotNull(directory);
-            checkState(directory.exists() && directory.isDirectory());
+        if (readOnly) {
+            checkNotNull(builder.directory);
+            checkState(builder.directory.exists() && 
builder.directory.isDirectory());
         } else {
-            checkNotNull(directory).mkdirs();
+            checkNotNull(builder.directory).mkdirs();
         }
 
-        if (cacheSizeMB < 0) {
+        if (builder.cacheSize < 0) {
             this.tracker = new SegmentTracker(this, 0, getVersion());
-        } else if (cacheSizeMB > 0) {
-            this.tracker = new SegmentTracker(this, cacheSizeMB, getVersion());
+        } else if (builder.cacheSize > 0) {
+            this.tracker = new SegmentTracker(this, builder.cacheSize, 
getVersion());
         } else {
             this.tracker = new SegmentTracker(this, getVersion());
         }
-        this.blobStore = blobStore;
-        this.directory = directory;
-        this.maxFileSize = maxFileSizeMB * MB;
-        this.memoryMapping = memoryMapping;
-        this.gcMonitor = gcMonitor;
+        this.blobStore = builder.blobStore;
+        this.directory = builder.directory;
+        this.maxFileSize = builder.maxFileSize * MB;
+        this.memoryMapping = builder.memoryMapping;
+        this.gcMonitor = builder.gcMonitor;
 
-        if (readonly) {
+        if (readOnly) {
             journalFile = new RandomAccessFile(new File(directory,
                     JOURNAL_FILE_NAME), "r");
         } else {
@@ -440,7 +414,7 @@ public class FileStore implements Segmen
         Integer[] indices = map.keySet().toArray(new Integer[map.size()]);
         Arrays.sort(indices);
         for (int i = indices.length - 1; i >= 0; i--) {
-            if (!readonly) {
+            if (!readOnly) {
                 readers.add(TarReader.open(map.get(indices[i]), 
memoryMapping));
             } else {
                 // only try to read-only recover the latest file as that might
@@ -453,9 +427,9 @@ public class FileStore implements Segmen
 
         long initialSize = size();
         this.approximateSize = new AtomicLong(initialSize);
-        this.stats = new FileStoreStats(statsProvider, this, initialSize);
+        this.stats = new FileStoreStats(builder.statsProvider, this, 
initialSize);
 
-        if (!readonly) {
+        if (!readOnly) {
             if (indices.length > 0) {
                 this.writeNumber = indices[indices.length - 1] + 1;
             } else {
@@ -492,7 +466,7 @@ public class FileStore implements Segmen
 
         journalFile.seek(journalFile.length());
 
-        if (!readonly) {
+        if (!readOnly) {
             lockFile = new RandomAccessFile(
                     new File(directory, LOCK_FILE_NAME), "rw");
             lock = lockFile.getChannel().lock();
@@ -505,14 +479,14 @@ public class FileStore implements Segmen
             head = new AtomicReference<RecordId>(id);
             persistedHead = new AtomicReference<RecordId>(id);
         } else {
-            NodeBuilder builder = EMPTY_NODE.builder();
-            builder.setChildNode("root", initial);
+            NodeBuilder nodeBuilder = EMPTY_NODE.builder();
+            nodeBuilder.setChildNode("root", builder.root);
             head = new AtomicReference<RecordId>(tracker.getWriter().writeNode(
-                    builder.getNodeState()).getRecordId());
+                    nodeBuilder.getNodeState()).getRecordId());
             persistedHead = new AtomicReference<RecordId>(null);
         }
 
-        if (!readonly) {
+        if (!readOnly) {
             flushThread = BackgroundThread.run(
                     "TarMK flush thread [" + directory + "]", 5000, // 5s 
interval
                     new Runnable() {
@@ -556,7 +530,7 @@ public class FileStore implements Segmen
 
         sufficientDiskSpace = new AtomicBoolean(true);
 
-        if (readonly) {
+        if (readOnly) {
             log.info("TarMK ReadOnly opened: {} (mmap={})", directory,
                     memoryMapping);
         } else {
@@ -1419,27 +1393,8 @@ public class FileStore implements Segmen
      */
     public static class ReadOnlyStore extends FileStore {
 
-        public ReadOnlyStore(File directory, int cacheSize,
-                boolean memoryMapping) throws IOException {
-            this(directory, cacheSize, memoryMapping, null);
-        }
-
-        public ReadOnlyStore(File directory, int cacheSize,
-                boolean memoryMapping, BlobStore blobStore) throws IOException 
{
-            super(blobStore, directory, EMPTY_NODE, -1, cacheSize,
-                    memoryMapping, GCMonitor.EMPTY, StatisticsProvider.NOOP,
-                    true);
-        }
-
-        public ReadOnlyStore(File directory) throws IOException {
-            super(null, directory, EMPTY_NODE, -1, 0, MEMORY_MAPPING_DEFAULT,
-                    GCMonitor.EMPTY, StatisticsProvider.NOOP, true);
-        }
-
-        public ReadOnlyStore(File directory, BlobStore blobStore)
-                throws IOException {
-            super(blobStore, directory, EMPTY_NODE, -1, 0,
-                    MEMORY_MAPPING_DEFAULT, GCMonitor.EMPTY, 
StatisticsProvider.NOOP, true);
+        private ReadOnlyStore(Builder builder) throws IOException {
+            super(builder, true);
         }
 
         /**

Modified: 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/ConsistencyChecker.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/ConsistencyChecker.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/ConsistencyChecker.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/ConsistencyChecker.java
 Tue Apr 12 11:45:05 2016
@@ -39,6 +39,7 @@ import org.apache.jackrabbit.oak.api.Pro
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.plugins.segment.SegmentBlob;
 import org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore;
+import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore.ReadOnlyStore;
 import org.apache.jackrabbit.oak.plugins.segment.file.JournalReader;
 import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
@@ -117,7 +118,7 @@ public class ConsistencyChecker {
      */
     public ConsistencyChecker(File directory, long debugInterval)
             throws IOException {
-        store = new ReadOnlyStore(directory);
+        store = FileStore.builder(directory).buildReadOnly();
         this.debugInterval = debugInterval;
     }
 

Modified: 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/RevisionHistory.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/RevisionHistory.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/RevisionHistory.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/tooling/RevisionHistory.java
 Tue Apr 12 11:45:05 2016
@@ -53,7 +53,7 @@ public class RevisionHistory {
      * @throws IOException
      */
     public RevisionHistory(@Nonnull File directory) throws IOException {
-        this.store = new ReadOnlyStore(checkNotNull(directory));
+        this.store = 
FileStore.builder(checkNotNull(directory)).buildReadOnly();
     }
 
     private static NodeState getNode(SegmentNodeState root, String path) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackupTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackupTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackupTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/backup/FileStoreBackupTest.java
 Tue Apr 12 11:45:05 2016
@@ -20,7 +20,6 @@ package org.apache.jackrabbit.oak.plugin
 
 import static org.apache.commons.io.FileUtils.deleteQuietly;
 import static 
org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.newSegmentNodeStore;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 import static org.junit.Assert.assertEquals;
 
 import java.io.ByteArrayInputStream;
@@ -63,7 +62,7 @@ public class FileStoreBackupTest {
 
     @Test
     public void testBackup() throws Exception {
-        FileStore source = newFileStore(src).withMaxFileSize(8).create();
+        FileStore source = FileStore.builder(src).withMaxFileSize(8).build();
 
         NodeStore store = newSegmentNodeStore(source).create();
         init(store);
@@ -82,7 +81,7 @@ public class FileStoreBackupTest {
 
     @Test
     public void testRestore() throws Exception {
-        FileStore source = newFileStore(src).withMaxFileSize(8).create();
+        FileStore source = FileStore.builder(src).withMaxFileSize(8).build();
 
         NodeStore store = newSegmentNodeStore(source).create();
         init(store);
@@ -92,7 +91,7 @@ public class FileStoreBackupTest {
 
         FileStoreRestore.restore(destination, src);
 
-        source = newFileStore(src).withMaxFileSize(8).create();
+        source = FileStore.builder(src).withMaxFileSize(8).build();
         compare(source, destination);
         source.close();
     }
@@ -116,7 +115,7 @@ public class FileStoreBackupTest {
 
     private static void compare(FileStore store, File destination)
             throws IOException {
-        FileStore backup = 
newFileStore(destination).withMaxFileSize(8).create();
+        FileStore backup = 
FileStore.builder(destination).withMaxFileSize(8).build();
         assertEquals(store.getHead(), backup.getHead());
         backup.close();
     }

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionAndCleanupIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionAndCleanupIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionAndCleanupIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionAndCleanupIT.java
 Tue Apr 12 11:45:05 2016
@@ -32,7 +32,6 @@ import static org.apache.jackrabbit.oak.
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.CleanupType.CLEAN_ALL;
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.CleanupType.CLEAN_NONE;
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.CleanupType.CLEAN_OLD;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
@@ -63,7 +62,6 @@ import org.apache.jackrabbit.oak.api.Pro
 import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
-import org.apache.jackrabbit.oak.plugins.segment.file.NonCachingFileStore;
 import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
 import org.apache.jackrabbit.oak.spi.commit.EmptyHook;
 import org.apache.jackrabbit.oak.spi.state.ChildNodeEntry;
@@ -104,9 +102,9 @@ public class CompactionAndCleanupIT {
 
         // really long time span, no binary cloning
 
-        FileStore fileStore = FileStore.newFileStore(directory)
+        FileStore fileStore = FileStore.builder(directory)
                 .withMaxFileSize(1)
-                .create();
+                .build();
         final SegmentNodeStore nodeStore = new SegmentNodeStore(fileStore);
         CompactionStrategy custom = new CompactionStrategy(false, false,
                 CLEAN_OLD, TimeUnit.HOURS.toMillis(1), (byte) 0) {
@@ -213,7 +211,7 @@ public class CompactionAndCleanupIT {
         final int blobSize = 5 * 1024 * 1024;
         final int dataNodes = 10000;
 
-        FileStore fileStore = new FileStore(directory, 1);
+        FileStore fileStore = 
FileStore.builder(directory).withMaxFileSize(1).build();
         final SegmentNodeStore nodeStore = new SegmentNodeStore(fileStore);
         CompactionStrategy custom = new CompactionStrategy(false, false,
                 CLEAN_OLD, TimeUnit.HOURS.toMillis(1), (byte) 0) {
@@ -314,7 +312,7 @@ public class CompactionAndCleanupIT {
      */
     @Test
     public void testMixedSegments() throws Exception {
-        FileStore store = new FileStore(directory, 2, false);
+        FileStore store = 
FileStore.builder(directory).withMaxFileSize(2).withMemoryMapping(true).build();
         final SegmentNodeStore nodeStore = new SegmentNodeStore(store);
         final AtomicBoolean compactionSuccess = new AtomicBoolean(true);
         CompactionStrategy strategy = new CompactionStrategy(true, false, 
CLEAN_NONE, 0, (byte) 5) {
@@ -391,7 +389,7 @@ public class CompactionAndCleanupIT {
      */
     @Test
     public void cleanupCyclicGraph() throws IOException, ExecutionException, 
InterruptedException {
-        FileStore fileStore = newFileStore(directory).create();
+        FileStore fileStore = FileStore.builder(directory).build();
         final SegmentWriter writer = fileStore.getTracker().getWriter();
         final SegmentNodeState oldHead = fileStore.getHead();
 
@@ -415,7 +413,7 @@ public class CompactionAndCleanupIT {
         fileStore.setHead(oldHead, newHead);
         fileStore.close();
 
-        fileStore = newFileStore(directory).create();
+        fileStore = FileStore.builder(directory).build();
 
         traverse(fileStore.getHead());
         fileStore.cleanup();
@@ -446,7 +444,7 @@ public class CompactionAndCleanupIT {
     public void preCompactionReferences() throws IOException, 
CommitFailedException, InterruptedException {
         for (String ref : new String[] {"merge-before-compact", 
"merge-after-compact"}) {
             File repoDir = new File(directory, ref);
-            FileStore fileStore = 
newFileStore(repoDir).withMaxFileSize(2).create();
+            FileStore fileStore = 
FileStore.builder(repoDir).withMaxFileSize(2).build();
             final SegmentNodeStore nodeStore = 
newSegmentNodeStore(fileStore).create();
             fileStore.setCompactionStrategy(new CompactionStrategy(true, 
false, CLEAN_NONE, 0, (byte) 5) {
                 @Override
@@ -496,7 +494,7 @@ public class CompactionAndCleanupIT {
             }
 
             // Re-initialise the file store to simulate off-line gc
-            fileStore = newFileStore(repoDir).withMaxFileSize(2).create();
+            fileStore = FileStore.builder(repoDir).withMaxFileSize(2).build();
             try {
                 // The 1M blob should get gc-ed. This works for case 1.
                 // However it doesn't for case 2 as merging after compaction
@@ -606,7 +604,7 @@ public class CompactionAndCleanupIT {
 
     @Test
     public void propertyRetention() throws IOException, CommitFailedException {
-        FileStore fileStore = new NonCachingFileStore(directory, 1);
+        FileStore fileStore = 
FileStore.builder(directory).withMaxFileSize(1).build();
         try {
             final SegmentNodeStore nodeStore = new SegmentNodeStore(fileStore);
             CompactionStrategy strategy = new CompactionStrategy(false, false, 
CLEAN_ALL, 0, (byte) 0) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionMapTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionMapTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionMapTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/CompactionMapTest.java
 Tue Apr 12 11:45:05 2016
@@ -100,7 +100,7 @@ public class CompactionMapTest {
 
     public CompactionMapTest(boolean usePersistedMap) throws IOException {
         directory = mkDir();
-        store = FileStore.newFileStore(directory).create();
+        store = FileStore.builder(directory).build();
 
         compactionMap1 = createCompactionMap(usePersistedMap);
         referenceMap1 = randomRecordIdMap(rnd, store.getTracker(), 10, 10);

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/ExternalBlobIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/ExternalBlobIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/ExternalBlobIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/ExternalBlobIT.java
 Tue Apr 12 11:45:05 2016
@@ -16,18 +16,34 @@
  */
 package org.apache.jackrabbit.oak.plugins.segment;
 
-import com.google.common.collect.Lists;
+import static 
org.apache.jackrabbit.oak.commons.FixturesHelper.Fixture.SEGMENT_MK;
+import static org.apache.jackrabbit.oak.commons.FixturesHelper.getFixtures;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assume.assumeTrue;
 
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Random;
+
+import javax.annotation.Nonnull;
+
+import com.google.common.collect.Lists;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
 import org.apache.jackrabbit.core.data.FileDataStore;
 import org.apache.jackrabbit.oak.api.Blob;
 import org.apache.jackrabbit.oak.api.PropertyState;
+import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.plugins.blob.ReferenceCollector;
 import org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore;
 import org.apache.jackrabbit.oak.plugins.memory.AbstractBlob;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileBlob;
-import org.apache.jackrabbit.oak.api.Type;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
 import org.apache.jackrabbit.oak.spi.blob.BlobStore;
 import org.apache.jackrabbit.oak.spi.commit.CommitInfo;
@@ -39,23 +55,6 @@ import org.junit.BeforeClass;
 import org.junit.Ignore;
 import org.junit.Test;
 
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.List;
-import java.util.Random;
-
-import javax.annotation.Nonnull;
-
-import static org.apache.jackrabbit.oak.commons.FixturesHelper.getFixtures;
-import static 
org.apache.jackrabbit.oak.commons.FixturesHelper.Fixture.SEGMENT_MK;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assume.assumeTrue;
-import static org.junit.Assert.assertTrue;
-
 public class ExternalBlobIT {
 
     private SegmentStore store;
@@ -158,7 +157,7 @@ public class ExternalBlobIT {
 
     protected SegmentNodeStore getNodeStore(BlobStore blobStore) throws 
IOException {
         if (nodeStore == null) {
-            store = new FileStore(blobStore, getWorkDir(), 256, false);
+            store = 
FileStore.builder(getWorkDir()).withBlobStore(blobStore).withMaxFileSize(256).withMemoryMapping(false).build();
             nodeStore = new SegmentNodeStore(store);
         }
         return nodeStore;

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/HeavyWriteIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/HeavyWriteIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/HeavyWriteIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/HeavyWriteIT.java
 Tue Apr 12 11:45:05 2016
@@ -92,7 +92,7 @@ public class HeavyWriteIT {
 
     @Test
     public void heavyWrite() throws IOException, CommitFailedException, 
InterruptedException {
-        final FileStore store = new FileStore(directory, 128, false);
+        final FileStore store = 
FileStore.builder(directory).withMaxFileSize(128).withMemoryMapping(false).build();
         final SegmentNodeStore nodeStore = new SegmentNodeStore(store);
         CompactionStrategy custom = new CompactionStrategy(false, false,
                 CLEAN_OLD, 30000, (byte) 0) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/PartialCompactionMapTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/PartialCompactionMapTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/PartialCompactionMapTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/PartialCompactionMapTest.java
 Tue Apr 12 11:45:05 2016
@@ -32,7 +32,6 @@ import static org.apache.jackrabbit.oak.
 import static org.apache.jackrabbit.oak.plugins.segment.SegmentVersion.V_11;
 import static 
org.apache.jackrabbit.oak.plugins.segment.TestUtils.newValidOffset;
 import static 
org.apache.jackrabbit.oak.plugins.segment.TestUtils.randomRecordIdMap;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertNull;
@@ -102,7 +101,7 @@ public class PartialCompactionMapTest {
         directory.delete();
         directory.mkdir();
 
-        segmentStore = newFileStore(directory).create();
+        segmentStore = FileStore.builder(directory).build();
     }
 
     @After

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentCompactionIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentCompactionIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentCompactionIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentCompactionIT.java
 Tue Apr 12 11:45:05 2016
@@ -37,7 +37,6 @@ import static org.apache.commons.io.File
 import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
 import static org.apache.jackrabbit.oak.plugins.segment.CompactionMap.sum;
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.CleanupType.CLEAN_OLD;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 import static org.junit.Assume.assumeTrue;
 import static org.slf4j.helpers.MessageFormatter.arrayFormat;
 import static org.slf4j.helpers.MessageFormatter.format;
@@ -231,10 +230,10 @@ public class SegmentCompactionIT {
         directory.delete();
         directory.mkdir();
 
-        fileStore = newFileStore(directory)
+        fileStore = FileStore.builder(directory)
                 .withMemoryMapping(true)
                 .withGCMonitor(gcMonitor)
-                .create();
+                .build();
         SegmentNodeStoreBuilder nodeStoreBuilder = SegmentNodeStore
                 .newSegmentNodeStore(fileStore);
         nodeStoreBuilder.withCompactionStrategy(false, false,

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentDataStoreBlobGCIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentDataStoreBlobGCIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentDataStoreBlobGCIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentDataStoreBlobGCIT.java
 Tue Apr 12 11:45:05 2016
@@ -107,10 +107,10 @@ public class SegmentDataStoreBlobGCIT {
 
     protected SegmentNodeStore getNodeStore(BlobStore blobStore) throws 
IOException {
         if (nodeStore == null) {
-            FileStore.Builder builder = FileStore.newFileStore(getWorkDir())
+            FileStore.Builder builder = FileStore.builder(getWorkDir())
                     .withBlobStore(blobStore).withMaxFileSize(256)
                     .withCacheSize(64).withMemoryMapping(false);
-            store = builder.create();
+            store = builder.build();
             CompactionStrategy compactionStrategy =
                 new CompactionStrategy(false, true,
                     CompactionStrategy.CleanupType.CLEAN_OLD, 0, 
CompactionStrategy.MEMORY_THRESHOLD_DEFAULT) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentGraphTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentGraphTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentGraphTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentGraphTest.java
 Tue Apr 12 11:45:05 2016
@@ -46,6 +46,7 @@ import com.google.common.collect.Immutab
 import com.google.common.collect.Multiset;
 import org.apache.commons.io.IOUtils;
 import org.apache.jackrabbit.oak.plugins.segment.SegmentGraph.Graph;
+import org.apache.jackrabbit.oak.plugins.segment.file.FileStore;
 import org.apache.jackrabbit.oak.plugins.segment.file.FileStore.ReadOnlyStore;
 import org.junit.After;
 import org.junit.Before;
@@ -109,7 +110,7 @@ public class SegmentGraphTest {
 
     @Test
     public void testSegmentGraph() throws IOException {
-        ReadOnlyStore store = new ReadOnlyStore(storeDir);
+        ReadOnlyStore store = FileStore.builder(storeDir).buildReadOnly();
         try {
             Graph<UUID> segmentGraph = parseSegmentGraph(store, 
Predicates.<UUID>alwaysTrue());
             assertEquals(segments, newHashSet(segmentGraph.vertices()));
@@ -125,7 +126,7 @@ public class SegmentGraphTest {
 
     @Test
     public void testSegmentGraphWithFilter() throws IOException {
-        ReadOnlyStore store = new ReadOnlyStore(storeDir);
+        ReadOnlyStore store = FileStore.builder(storeDir).buildReadOnly();
         try {
             Predicate<UUID> filter = createRegExpFilter(".*testWriter.*", 
store.getTracker());
             Graph<UUID> segmentGraph = parseSegmentGraph(store, filter);
@@ -142,7 +143,7 @@ public class SegmentGraphTest {
 
     @Test
     public void testGCGraph() throws IOException {
-        ReadOnlyStore store = new ReadOnlyStore(storeDir);
+        ReadOnlyStore store = FileStore.builder(storeDir).buildReadOnly();
         try {
             Graph<String> gcGraph = SegmentGraph.parseGCGraph(store);
             assertEquals(gcGenerations, newHashSet(gcGraph.vertices()));

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentOverflowExceptionIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentOverflowExceptionIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentOverflowExceptionIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentOverflowExceptionIT.java
 Tue Apr 12 11:45:05 2016
@@ -23,7 +23,6 @@ import static org.apache.commons.io.File
 import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.CleanupType.CLEAN_OLD;
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.MEMORY_THRESHOLD_DEFAULT;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 import static org.junit.Assume.assumeTrue;
 
 import java.io.ByteArrayInputStream;
@@ -109,7 +108,7 @@ public class SegmentOverflowExceptionIT
 
     @Test
     public void run() throws IOException, CommitFailedException, 
InterruptedException {
-        FileStore fileStore = 
newFileStore(directory).withGCMonitor(gcMonitor).create();
+        FileStore fileStore = 
FileStore.builder(directory).withGCMonitor(gcMonitor).build();
         try {
             final SegmentNodeStore nodeStore = new SegmentNodeStore(fileStore);
             fileStore.setCompactionStrategy(new CompactionStrategy(false, 
false, CLEAN_OLD, 1000, MEMORY_THRESHOLD_DEFAULT) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentVersionTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentVersionTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentVersionTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/SegmentVersionTest.java
 Tue Apr 12 11:45:05 2016
@@ -24,6 +24,7 @@ import static org.apache.jackrabbit.oak.
 import static org.apache.jackrabbit.oak.api.Type.STRING;
 import static org.apache.jackrabbit.oak.api.Type.STRINGS;
 import static 
org.apache.jackrabbit.oak.plugins.segment.SegmentVersion.LATEST_VERSION;
+import static org.apache.jackrabbit.oak.plugins.segment.SegmentVersion.V_10;
 import static org.apache.jackrabbit.oak.plugins.segment.SegmentVersion.V_11;
 import static 
org.apache.jackrabbit.oak.plugins.segment.compaction.CompactionStrategy.CleanupType.CLEAN_NONE;
 import static org.junit.Assert.assertEquals;
@@ -86,13 +87,7 @@ public class SegmentVersionTest {
 
     @Test
     public void compareOldRevision() throws Exception {
-        FileStore fileStoreV10 = new FileStore(directory, 1) {
-            @SuppressWarnings("deprecation")
-            @Override
-            public SegmentVersion getVersion() {
-                return SegmentVersion.V_10;
-            }
-        };
+        FileStore fileStoreV10 = 
FileStore.builder(directory).withMaxFileSize(1).withSegmentVersion(V_10).build();
         try {
             NodeState content = addTestContent(fileStoreV10, 
"content").getChildNode("content");
             assertVersion(content, SegmentVersion.V_10);
@@ -142,13 +137,7 @@ public class SegmentVersionTest {
 
     @Test
     public void readOldVersions() throws Exception {
-        FileStore fileStoreV10 = new FileStore(directory, 1) {
-            @SuppressWarnings("deprecation")
-            @Override
-            public SegmentVersion getVersion() {
-                return SegmentVersion.V_10;
-            }
-        };
+        FileStore fileStoreV10 = 
FileStore.builder(directory).withMaxFileSize(1).withSegmentVersion(V_10).build();
         try {
             NodeState content = addTestContent(fileStoreV10, "content");
             assertVersion(content, SegmentVersion.V_10);
@@ -156,7 +145,7 @@ public class SegmentVersionTest {
             fileStoreV10.close();
         }
 
-        FileStore fileStoreV11 = new FileStore(directory, 1);
+        FileStore fileStoreV11 = 
FileStore.builder(directory).withMaxFileSize(1).build();
         try {
             verifyContent(fileStoreV11, "content");
         } finally {
@@ -166,13 +155,7 @@ public class SegmentVersionTest {
 
     @Test
     public void mixedVersions() throws IOException, CommitFailedException {
-        FileStore fileStoreV10 = new FileStore(directory, 1) {
-            @SuppressWarnings("deprecation")
-            @Override
-            public SegmentVersion getVersion() {
-                return SegmentVersion.V_10;
-            }
-        };
+        FileStore fileStoreV10 = 
FileStore.builder(directory).withMaxFileSize(1).withSegmentVersion(V_10).build();
         try {
             NodeState content10 = addTestContent(fileStoreV10, "content10");
             assertVersion(content10, SegmentVersion.V_10);
@@ -180,7 +163,7 @@ public class SegmentVersionTest {
             fileStoreV10.close();
         }
 
-        FileStore fileStoreV11 = new FileStore(directory, 1);
+        FileStore fileStoreV11 = 
FileStore.builder(directory).withMaxFileSize(1).build();
         try {
             NodeState content11 = addTestContent(fileStoreV11, "content11");
             assertVersion(content11, V_11);
@@ -193,20 +176,14 @@ public class SegmentVersionTest {
 
     @Test
     public void migrate() throws IOException, CommitFailedException {
-        FileStore fileStoreV10 = new FileStore(directory, 1) {
-            @SuppressWarnings("deprecation")
-            @Override
-            public SegmentVersion getVersion() {
-                return SegmentVersion.V_10;
-            }
-        };
+        FileStore fileStoreV10 = 
FileStore.builder(directory).withMaxFileSize(1).withSegmentVersion(V_10).build();
         try {
             addTestContent(fileStoreV10, "content10");
         } finally {
             fileStoreV10.close();
         }
 
-        FileStore fileStoreV11 = new FileStore(directory, 1);
+        FileStore fileStoreV11 = 
FileStore.builder(directory).withMaxFileSize(1).build();
         try {
             fileStoreV11.setCompactionStrategy(new CompactionStrategy(false, 
false,
                     CLEAN_NONE, 0, (byte) 0) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/CompactionEstimatorTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/CompactionEstimatorTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/CompactionEstimatorTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/CompactionEstimatorTest.java
 Tue Apr 12 11:45:05 2016
@@ -60,7 +60,7 @@ public class CompactionEstimatorTest {
         final int MB = 1024 * 1024;
         final int blobSize = 2 * MB;
 
-        FileStore fileStore = new FileStore(directory, 2, false);
+        FileStore fileStore = 
FileStore.builder(directory).withMaxFileSize(2).withMemoryMapping(false).build();
         SegmentNodeStore nodeStore = new SegmentNodeStore(fileStore);
 
         // 1. Create some blob properties

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/ExternalBlobReferenceTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/ExternalBlobReferenceTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/ExternalBlobReferenceTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/ExternalBlobReferenceTest.java
 Tue Apr 12 11:45:05 2016
@@ -49,7 +49,7 @@ public class ExternalBlobReferenceTest {
     @Before
     public void createFileStore() throws Exception {
         blobStore = mock(BlobStore.class);
-        fileStore = 
FileStore.newFileStore(segmentFolder.getRoot()).withBlobStore(blobStore).create();
+        fileStore = 
FileStore.builder(segmentFolder.getRoot()).withBlobStore(blobStore).build();
     }
 
     @After

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreIT.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreIT.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreIT.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreIT.java
 Tue Apr 12 11:45:05 2016
@@ -18,14 +18,14 @@ package org.apache.jackrabbit.oak.plugin
 
 import static com.google.common.collect.Lists.newArrayList;
 import static com.google.common.collect.Sets.newTreeSet;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
 import static org.apache.commons.io.FileUtils.deleteDirectory;
-import static org.apache.jackrabbit.oak.commons.FixturesHelper.getFixtures;
 import static 
org.apache.jackrabbit.oak.commons.FixturesHelper.Fixture.SEGMENT_MK;
+import static org.apache.jackrabbit.oak.commons.FixturesHelper.getFixtures;
 import static 
org.apache.jackrabbit.oak.plugins.memory.EmptyNodeState.EMPTY_NODE;
 import static org.apache.jackrabbit.oak.plugins.segment.SegmentVersion.V_11;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
 import static org.junit.Assume.assumeTrue;
 
 import java.io.ByteArrayInputStream;
@@ -39,7 +39,6 @@ import java.util.Map;
 import java.util.Random;
 
 import com.google.common.base.Strings;
-
 import org.apache.jackrabbit.oak.api.Blob;
 import org.apache.jackrabbit.oak.plugins.segment.Compactor;
 import org.apache.jackrabbit.oak.plugins.segment.RecordId;
@@ -91,10 +90,10 @@ public class FileStoreIT {
     }
 
     public void testRestartAndGC(boolean memoryMapping) throws IOException {
-        FileStore store = new FileStore(directory, 1, memoryMapping);
+        FileStore store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(memoryMapping).build();
         store.close();
 
-        store = new FileStore(directory, 1, memoryMapping);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(memoryMapping).build();
         SegmentNodeState base = store.getHead();
         SegmentNodeBuilder builder = base.builder();
         byte[] data = new byte[10 * 1024 * 1024];
@@ -106,12 +105,12 @@ public class FileStoreIT {
         store.setHead(store.getHead(), base);
         store.close();
 
-        store = new FileStore(directory, 1, memoryMapping);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(memoryMapping).build();
         store.gc();
         store.flush();
         store.close();
 
-        store = new FileStore(directory, 1, memoryMapping);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(memoryMapping).build();
         store.close();
     }
 
@@ -119,7 +118,7 @@ public class FileStoreIT {
     public void testCompaction() throws IOException {
         int largeBinarySize = 10 * 1024 * 1024;
 
-        FileStore store = new FileStore(directory, 1, false);
+        FileStore store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         SegmentWriter writer = store.getTracker().getWriter();
 
         SegmentNodeState base = store.getHead();
@@ -141,7 +140,7 @@ public class FileStoreIT {
 
         // First simulate the case where during compaction a reference to the
         // older segments is added to a segment that the compactor is writing
-        store = new FileStore(directory, 1, false);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         head = store.getHead();
         assertTrue(store.size() > largeBinarySize);
         builder = head.builder();
@@ -151,7 +150,7 @@ public class FileStoreIT {
         store.close();
 
         // In this case the revision cleanup is unable to reclaim the old data
-        store = new FileStore(directory, 1, false);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         assertTrue(store.size() > largeBinarySize);
         store.cleanup();
         assertTrue(store.size() > largeBinarySize);
@@ -159,7 +158,7 @@ public class FileStoreIT {
 
         // Now we do the same thing, but let the compactor use a different
         // SegmentWriter
-        store = new FileStore(directory, 1, false);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         head = store.getHead();
         assertTrue(store.size() > largeBinarySize);
         writer = new SegmentWriter(store, V_11, "");
@@ -173,7 +172,7 @@ public class FileStoreIT {
         store.close();
 
         // Revision cleanup is now able to reclaim the extra space (OAK-1932)
-        store = new FileStore(directory, 1, false);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         assertTrue(store.size() > largeBinarySize);
         store.cleanup();
         assertTrue(store.size() < largeBinarySize);
@@ -182,7 +181,7 @@ public class FileStoreIT {
 
     @Test
     public void testRecovery() throws IOException {
-        FileStore store = new FileStore(directory, 1, false);
+        FileStore store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         store.flush();
 
         RandomAccessFile data0 = new RandomAccessFile(new File(directory, 
"data00000a.tar"), "r");
@@ -202,7 +201,7 @@ public class FileStoreIT {
         store.setHead(base, builder.getNodeState());
         store.close();
 
-        store = new FileStore(directory, 1, false);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         assertEquals("b", store.getHead().getString("step"));
         store.close();
 
@@ -211,7 +210,7 @@ public class FileStoreIT {
         file.setLength(pos1);
         file.close();
 
-        store = new FileStore(directory, 1, false);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         assertEquals("a", store.getHead().getString("step"));
         store.close();
 
@@ -220,7 +219,7 @@ public class FileStoreIT {
         file.setLength(pos0);
         file.close();
 
-        store = new FileStore(directory, 1, false);
+        store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         assertFalse(store.getHead().hasProperty("step"));
         store.close();
     }
@@ -253,7 +252,7 @@ public class FileStoreIT {
     @Test  // See OAK-2049
     public void segmentOverflow() throws IOException {
         for (int n = 1; n < 255; n++) {  // 255 = ListRecord.LEVEL_SIZE
-            FileStore store = new FileStore(directory, 1, false);
+            FileStore store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
             SegmentWriter writer = store.getTracker().getWriter();
             // writer.length == 32  (from the root node)
 
@@ -285,7 +284,7 @@ public class FileStoreIT {
 
     @Test
     public void nonBlockingROStore() throws IOException {
-        FileStore store = new FileStore(directory, 1, false);
+        FileStore store = 
FileStore.builder(directory).withMaxFileSize(1).withMemoryMapping(false).build();
         store.flush(); // first 1kB
         SegmentNodeState base = store.getHead();
         SegmentNodeBuilder builder = base.builder();
@@ -295,7 +294,7 @@ public class FileStoreIT {
 
         ReadOnlyStore ro = null;
         try {
-            ro = new ReadOnlyStore(directory);
+            ro = FileStore.builder(directory).buildReadOnly();
             assertEquals(store.getHead(), ro.getHead());
         } finally {
             if (ro != null) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreStatsTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreStatsTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreStatsTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreStatsTest.java
 Tue Apr 12 11:45:05 2016
@@ -49,9 +49,9 @@ public class FileStoreStatsTest {
     @Before
     public void createFileStore() throws Exception {
         BlobStore blobStore = mock(BlobStore.class);
-        fileStore = FileStore.newFileStore(segmentFolder.newFolder())
+        fileStore = FileStore.builder(segmentFolder.newFolder())
                 .withBlobStore(blobStore)
-                .withStatisticsProvider(statsProvider).create();
+                .withStatisticsProvider(statsProvider).build();
     }
 
     @After

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/FileStoreTest.java
 Tue Apr 12 11:45:05 2016
@@ -21,7 +21,6 @@ package org.apache.jackrabbit.oak.plugin
 
 import static java.io.File.createTempFile;
 import static org.apache.commons.io.FileUtils.deleteDirectory;
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
 
 import java.io.File;
 import java.io.IOException;
@@ -51,7 +50,7 @@ public class FileStoreTest {
     @Ignore("OAK-4054")  // FIXME OAK-4054
     @Test
     public void containsSegment() throws IOException {
-        FileStore fileStore = newFileStore(directory).create();
+        FileStore fileStore = FileStore.builder(directory).build();
         try {
             SegmentId id = new SegmentId(fileStore.getTracker(), 0, 0);
             if (fileStore.containsSegment(id)) {

Modified: 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/JournalEntryTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/JournalEntryTest.java?rev=1738778&r1=1738777&r2=1738778&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/JournalEntryTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-segment/src/test/java/org/apache/jackrabbit/oak/plugins/segment/file/JournalEntryTest.java
 Tue Apr 12 11:45:05 2016
@@ -19,6 +19,10 @@
 
 package org.apache.jackrabbit.oak.plugins.segment.file;
 
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
 import java.io.File;
 import java.nio.charset.Charset;
 import java.util.List;
@@ -33,11 +37,6 @@ import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.TemporaryFolder;
 
-import static 
org.apache.jackrabbit.oak.plugins.segment.file.FileStore.newFileStore;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
 public class JournalEntryTest {
 
     @Rule
@@ -45,8 +44,8 @@ public class JournalEntryTest {
 
     @Test
     public void timestampInJournalEntry() throws Exception{
-        FileStore fileStore = 
newFileStore(tempFolder.getRoot()).withMaxFileSize(5)
-                .withNoCache().withMemoryMapping(true).create();
+        FileStore fileStore = 
FileStore.builder(tempFolder.getRoot()).withMaxFileSize(5)
+                .withNoCache().withMemoryMapping(true).build();
 
         SegmentNodeStore nodeStore = 
SegmentNodeStore.newSegmentNodeStore(fileStore).create();
 



Reply via email to