Author: amitj
Date: Thu May 18 07:23:17 2017
New Revision: 1795488

URL: http://svn.apache.org/viewvc?rev=1795488&view=rev
Log:
OAK-6233: Typed properties not handled properly in the initialization of 
DataStore in oak-run

- Explicitly copying properties to a Map instance as objects

Modified:
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
    
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/BlobStoreFixtureProvider.java
    
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java?rev=1795488&r1=1795487&r2=1795488&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/Utils.java
 Thu May 18 07:23:17 2017
@@ -29,6 +29,7 @@ import java.util.ArrayList;
 import java.util.Dictionary;
 import java.util.Enumeration;
 import java.util.List;
+import java.util.Map;
 import java.util.Properties;
 
 import javax.annotation.CheckForNull;
@@ -250,7 +251,7 @@ class Utils {
             delegate = new OakFileDataStore();
             String cfgPath = fdsConfig.value(options);
             Properties props = loadAndTransformProps(cfgPath);
-            populate(delegate, Maps.fromProperties(props), true);
+            populate(delegate, asMap(props), true);
             delegate.init(null);
         }
         DataStoreBlobStore blobStore = new DataStoreBlobStore(delegate);
@@ -314,4 +315,12 @@ class Utils {
         }
         return props;
     }
+
+    private static Map<String, ?> asMap(Properties props) {
+        Map<String, Object> map = Maps.newHashMap();
+        for (Object key : props.keySet()) {
+            map.put((String)key, props.get(key));
+        }
+        return map;
+    }
 }

Modified: 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/BlobStoreFixtureProvider.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/BlobStoreFixtureProvider.java?rev=1795488&r1=1795487&r2=1795488&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/BlobStoreFixtureProvider.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/cli/BlobStoreFixtureProvider.java
 Thu May 18 07:23:17 2017
@@ -25,6 +25,7 @@ import java.io.FileInputStream;
 import java.io.IOException;
 import java.util.Dictionary;
 import java.util.Enumeration;
+import java.util.Map;
 import java.util.Properties;
 
 import javax.annotation.CheckForNull;
@@ -89,7 +90,7 @@ public class BlobStoreFixtureProvider {
             } else {
                 String cfgPath = bsopts.getFDSConfigPath();
                 Properties props = loadAndTransformProps(cfgPath);
-                populate(delegate, Maps.fromProperties(props), true);
+                populate(delegate, asMap(props), true);
             }
             delegate.init(null);
         }
@@ -141,4 +142,12 @@ public class BlobStoreFixtureProvider {
             }
         };
     }
+
+    private static Map<String, ?> asMap(Properties props) {
+        Map<String, Object> map = Maps.newHashMap();
+        for (Object key : props.keySet()) {
+            map.put((String)key, props.get(key));
+        }
+        return map;
+    }
 }

Modified: 
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java
URL: 
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java?rev=1795488&r1=1795487&r2=1795488&view=diff
==============================================================================
--- 
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java
 (original)
+++ 
jackrabbit/oak/trunk/oak-run/src/test/java/org/apache/jackrabbit/oak/run/DataStoreCheckTest.java
 Thu May 18 07:23:17 2017
@@ -118,6 +118,7 @@ public class DataStoreCheckTest {
             File cfgFile = temporaryFolder.newFile();
             Properties props = new Properties();
             props.put("path", dsPath);
+            props.put("minRecordLength", new Long(4096));
             cfgFilePath = createTempConfig(cfgFile, props);
             dsOption = "fds";
         }


Reply via email to