You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@crail.apache.org by as...@apache.org on 2019/05/28 14:56:11 UTC
[incubator-crail] branch master updated: Create CrailConfiguration
instance by calling one of three new static functions instead of
constructor.
This is an automated email from the ASF dual-hosted git repository.
asq pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-crail.git
The following commit(s) were added to refs/heads/master by this push:
new a6e622f Create CrailConfiguration instance by calling one of three new static functions instead of constructor.
a6e622f is described below
commit a6e622fc2310ca522aaf9f640ec6d408e2878a78
Author: Adrian Schuepbach <as...@apache.org>
AuthorDate: Wed Mar 6 22:45:13 2019 +0100
Create CrailConfiguration instance by calling one of three new static functions instead of constructor.
The new three functions allow to either create a configuration based on the
default configuration file, an explicitely passed configuration file
or to create an empty configuration. The constructor is niot directly accessible anymore.
These are the new functions:
createEmptyConfiguration();
createConfigurationFromFile();
createConfigurationFromFile(String path);
Close #72
Signed-off-by: Adrian Schuepbach <as...@apache.org>
---
.../org/apache/crail/conf/CrailConfiguration.java | 33 +++++++++++++++++-----
.../org/apache/crail/tools/CrailBenchmark.java | 2 +-
.../java/org/apache/crail/tools/CrailFsck.java | 12 ++++----
.../src/test/java/org/apache/crail/ClientTest.java | 2 +-
.../apache/crail/hdfs/CrailHadoopFileSystem.java | 2 +-
.../java/org/apache/crail/namenode/NameNode.java | 2 +-
.../nvmf/client/NvmfStagingBufferCacheTest.java | 4 +--
.../org/apache/crail/storage/StorageServer.java | 2 +-
8 files changed, 39 insertions(+), 20 deletions(-)
diff --git a/client/src/main/java/org/apache/crail/conf/CrailConfiguration.java b/client/src/main/java/org/apache/crail/conf/CrailConfiguration.java
index 579c587..3c44e9a 100644
--- a/client/src/main/java/org/apache/crail/conf/CrailConfiguration.java
+++ b/client/src/main/java/org/apache/crail/conf/CrailConfiguration.java
@@ -33,9 +33,32 @@ public class CrailConfiguration {
private static final Logger LOG = CrailUtils.getLogger();
private ConcurrentHashMap<String, String> conf;
- public CrailConfiguration() throws IOException {
+ private CrailConfiguration() {
conf = new ConcurrentHashMap<>();
- Properties properties = loadProperties("crail-site.conf");
+ }
+
+ public static CrailConfiguration createEmptyConfiguration() {
+ return new CrailConfiguration();
+ }
+
+ public static CrailConfiguration createConfigurationFromFile() throws IOException {
+ CrailConfiguration cconf = createEmptyConfiguration();
+ String base = System.getenv("CRAIL_HOME");
+ if (base == null || base.isEmpty()) {
+ throw new IllegalArgumentException("CRAIL_HOME environment variable is not set or empty");
+ }
+ cconf.loadConfigurationFromFile(base + File.separator + "conf" + File.separator + "crail-site.conf");
+ return (cconf);
+ }
+
+ public static CrailConfiguration createConfigurationFromFile(String path) throws IOException {
+ CrailConfiguration cconf = createEmptyConfiguration();
+ cconf.loadConfigurationFromFile(path);
+ return (cconf);
+ }
+
+ private void loadConfigurationFromFile(String path) throws IOException {
+ Properties properties = loadProperties(path);
mergeProperties(properties);
}
@@ -67,11 +90,7 @@ public class CrailConfiguration {
private static Properties loadProperties(String resourceName) throws IOException {
Properties properties = new Properties();
- String base = System.getenv("CRAIL_HOME");
- if (base == null || base.isEmpty()) {
- throw new IllegalArgumentException("CRAIL_HOME environment variable is not set or empty");
- }
- FileInputStream inputStream = new FileInputStream(new File(base + "/conf/" + resourceName));
+ FileInputStream inputStream = new FileInputStream(new File(resourceName));
try {
properties.load(inputStream);
diff --git a/client/src/main/java/org/apache/crail/tools/CrailBenchmark.java b/client/src/main/java/org/apache/crail/tools/CrailBenchmark.java
index 76ebc7a..269f9c9 100644
--- a/client/src/main/java/org/apache/crail/tools/CrailBenchmark.java
+++ b/client/src/main/java/org/apache/crail/tools/CrailBenchmark.java
@@ -60,7 +60,7 @@ public class CrailBenchmark {
public CrailBenchmark(int warmup) throws Exception {
this.warmup = warmup;
- this.conf = new CrailConfiguration();
+ this.conf = CrailConfiguration.createConfigurationFromFile();
this.fs = null;
}
diff --git a/client/src/main/java/org/apache/crail/tools/CrailFsck.java b/client/src/main/java/org/apache/crail/tools/CrailFsck.java
index 0b5da83..71436dd 100644
--- a/client/src/main/java/org/apache/crail/tools/CrailFsck.java
+++ b/client/src/main/java/org/apache/crail/tools/CrailFsck.java
@@ -54,7 +54,7 @@ public class CrailFsck {
public void getLocations(String filename, long offset, long length) throws Exception {
System.out.println("getLocations, filename " + filename + ", offset " + offset + ", len " + length);
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CrailStore fs = CrailStore.newInstance(conf);
CrailBlockLocation locations[] = fs.lookup(filename).get().getBlockLocations(offset, length);
@@ -66,7 +66,7 @@ public class CrailFsck {
public void blockStatistics(String filename) throws Exception {
HashMap<String, AtomicInteger> stats = new HashMap<String, AtomicInteger>();
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CrailStore fs = CrailStore.newInstance(conf);
CrailNode node = fs.lookup(filename).get();
@@ -96,14 +96,14 @@ public class CrailFsck {
}
public void namenodeDump() throws Exception {
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CoreDataStore fs = new CoreDataStore(conf);
fs.dumpNameNode();
fs.close();
}
public void directoryDump(String filename, boolean randomize) throws Exception {
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CrailConstants.updateConstants(conf);
CoreDataStore fs = new CoreDataStore(conf);
DirectoryInputStream iter = fs._listEntries(filename, randomize);
@@ -121,7 +121,7 @@ public class CrailFsck {
}
public void ping() throws Exception {
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CrailConstants.updateConstants(conf);
CoreDataStore fs = new CoreDataStore(conf);
fs.ping();
@@ -130,7 +130,7 @@ public class CrailFsck {
public void createDirectory(String filename, int storageClass, int locationClass) throws Exception {
System.out.println("createDirectory, filename " + filename + ", storageClass " + storageClass + ", locationClass " + locationClass);
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CrailStore fs = CrailStore.newInstance(conf);
fs.create(filename, CrailNodeType.DIRECTORY, CrailStorageClass.get(storageClass), CrailLocationClass.get(locationClass), true).get().syncDir();
fs.close();
diff --git a/client/src/test/java/org/apache/crail/ClientTest.java b/client/src/test/java/org/apache/crail/ClientTest.java
index 2e02a5e..d132192 100644
--- a/client/src/test/java/org/apache/crail/ClientTest.java
+++ b/client/src/test/java/org/apache/crail/ClientTest.java
@@ -38,7 +38,7 @@ public class ClientTest {
@Before
public void init() throws Exception {
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
fs = CrailStore.newInstance(conf);
fs.create(basePath, CrailNodeType.DIRECTORY, CrailStorageClass.DEFAULT, CrailLocationClass.DEFAULT, true).get();
}
diff --git a/hdfs/src/main/java/org/apache/crail/hdfs/CrailHadoopFileSystem.java b/hdfs/src/main/java/org/apache/crail/hdfs/CrailHadoopFileSystem.java
index 404d845..668bb95 100644
--- a/hdfs/src/main/java/org/apache/crail/hdfs/CrailHadoopFileSystem.java
+++ b/hdfs/src/main/java/org/apache/crail/hdfs/CrailHadoopFileSystem.java
@@ -67,7 +67,7 @@ public class CrailHadoopFileSystem extends FileSystem {
setConf(conf);
try {
- CrailConfiguration crailConf = new CrailConfiguration();
+ CrailConfiguration crailConf = CrailConfiguration.createConfigurationFromFile();
this.dfs = CrailStore.newInstance(crailConf);
Path _workingDir = new Path("/user/" + CrailConstants.USER);
this.workingDir = new Path("/user/" + CrailConstants.USER).makeQualified(uri, _workingDir);
diff --git a/namenode/src/main/java/org/apache/crail/namenode/NameNode.java b/namenode/src/main/java/org/apache/crail/namenode/NameNode.java
index 3ec6db8..ace6384 100644
--- a/namenode/src/main/java/org/apache/crail/namenode/NameNode.java
+++ b/namenode/src/main/java/org/apache/crail/namenode/NameNode.java
@@ -41,7 +41,7 @@ public class NameNode {
public static void main(String args[]) throws Exception {
LOG.info("initalizing namenode ");
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CrailConstants.updateConstants(conf);
URI uri = CrailUtils.getPrimaryNameNode();
diff --git a/storage-nvmf/src/test/java/org/apache/crail/storage/nvmf/client/NvmfStagingBufferCacheTest.java b/storage-nvmf/src/test/java/org/apache/crail/storage/nvmf/client/NvmfStagingBufferCacheTest.java
index 5d8a995..bf6a880 100644
--- a/storage-nvmf/src/test/java/org/apache/crail/storage/nvmf/client/NvmfStagingBufferCacheTest.java
+++ b/storage-nvmf/src/test/java/org/apache/crail/storage/nvmf/client/NvmfStagingBufferCacheTest.java
@@ -36,7 +36,7 @@ public class NvmfStagingBufferCacheTest {
@BeforeClass
public static void init() throws IOException {
- CrailConstants.updateConstants(new CrailConfiguration());
+ CrailConstants.updateConstants(CrailConfiguration.createConfigurationFromFile());
}
private static CrailBufferCache bufferCache;
@@ -86,4 +86,4 @@ public class NvmfStagingBufferCacheTest {
assertTrue(buffers.remove(bufferCacheEntry[i].getBuffer()));
}
}
-}
\ No newline at end of file
+}
diff --git a/storage/src/main/java/org/apache/crail/storage/StorageServer.java b/storage/src/main/java/org/apache/crail/storage/StorageServer.java
index 9dce8b2..8345f44 100644
--- a/storage/src/main/java/org/apache/crail/storage/StorageServer.java
+++ b/storage/src/main/java/org/apache/crail/storage/StorageServer.java
@@ -49,7 +49,7 @@ public interface StorageServer extends Configurable, Runnable {
public static void main(String[] args) throws Exception {
Logger LOG = CrailUtils.getLogger();
- CrailConfiguration conf = new CrailConfiguration();
+ CrailConfiguration conf = CrailConfiguration.createConfigurationFromFile();
CrailConstants.updateConstants(conf);
CrailConstants.printConf();
CrailConstants.verify();