You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by si...@apache.org on 2019/02/20 10:24:48 UTC

[bookkeeper] branch branch-4.9 updated: Filter empty string for networkTopologyScriptFileName

This is an automated email from the ASF dual-hosted git repository.

sijie pushed a commit to branch branch-4.9
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/branch-4.9 by this push:
     new 0f55253  Filter empty string for networkTopologyScriptFileName
0f55253 is described below

commit 0f55253dfafa59527090be8f4d2e306a090b247c
Author: Charan Reddy Guttapalem <re...@gmail.com>
AuthorDate: Wed Feb 20 02:24:03 2019 -0800

    Filter empty string for networkTopologyScriptFileName
    
    
    
    Descriptions of the changes in this PR:
    
    - filter empty string for networkTopologyScriptFileName.
    
    Reviewers: Enrico Olivelli <eo...@gmail.com>, Sijie Guo <si...@apache.org>
    
    This closes #1952 from reddycharan/ignoreemptystring
    
    (cherry picked from commit 166be82390ff18c402647838895ba07e3372e51d)
    Signed-off-by: Sijie Guo <si...@apache.org>
---
 .../org/apache/bookkeeper/net/AbstractDNSToSwitchMapping.java |  4 +++-
 .../java/org/apache/bookkeeper/net/ScriptBasedMapping.java    | 11 +++++++++--
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/AbstractDNSToSwitchMapping.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/AbstractDNSToSwitchMapping.java
index 84e9bd4..a19cc62 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/AbstractDNSToSwitchMapping.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/AbstractDNSToSwitchMapping.java
@@ -23,6 +23,7 @@ import java.util.Set;
 
 import org.apache.bookkeeper.conf.Configurable;
 import org.apache.commons.configuration.Configuration;
+import org.apache.commons.lang.StringUtils;
 
 /**
  * This is a base class for DNS to Switch mappings.
@@ -117,7 +118,8 @@ public abstract class AbstractDNSToSwitchMapping implements DNSToSwitchMapping,
     }
 
     protected boolean isSingleSwitchByScriptPolicy() {
-        return conf != null && conf.getString(CommonConfigurationKeys.NET_TOPOLOGY_SCRIPT_FILE_NAME_KEY) == null;
+        return conf != null
+                && (!StringUtils.isNotBlank(conf.getString(CommonConfigurationKeys.NET_TOPOLOGY_SCRIPT_FILE_NAME_KEY)));
     }
 
     /**
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/ScriptBasedMapping.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/ScriptBasedMapping.java
index 230f66d..0ef92ef 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/ScriptBasedMapping.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/net/ScriptBasedMapping.java
@@ -25,6 +25,7 @@ import java.util.StringTokenizer;
 
 import org.apache.bookkeeper.util.Shell.ShellCommandExecutor;
 import org.apache.commons.configuration.Configuration;
+import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -139,8 +140,14 @@ public final class ScriptBasedMapping extends CachedDNSToSwitchMapping {
         public void setConf(Configuration conf) {
             super.setConf(conf);
             if (conf != null) {
-                scriptName = conf.getString(SCRIPT_FILENAME_KEY);
-                maxArgs = conf.getInt(SCRIPT_ARG_COUNT_KEY, DEFAULT_ARG_COUNT);
+                String scriptNameConfValue = conf.getString(SCRIPT_FILENAME_KEY);
+                if (StringUtils.isNotBlank(scriptNameConfValue)) {
+                    scriptName = scriptNameConfValue;
+                    maxArgs = conf.getInt(SCRIPT_ARG_COUNT_KEY, DEFAULT_ARG_COUNT);
+                } else {
+                    scriptName = null;
+                    maxArgs = 0;
+                }
             } else {
                 scriptName = null;
                 maxArgs = 0;