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";
}