You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ko...@apache.org on 2010/08/15 15:19:03 UTC

svn commit: r985672 - in /lucene/dev/trunk/solr: CHANGES.txt src/java/org/apache/solr/handler/ReplicationHandler.java

Author: koji
Date: Sun Aug 15 13:19:03 2010
New Revision: 985672

URL: http://svn.apache.org/viewvc?rev=985672&view=rev
Log:
SOLR-2047: ReplicationHandler should accept bool type for enable flag

Modified:
    lucene/dev/trunk/solr/CHANGES.txt
    lucene/dev/trunk/solr/src/java/org/apache/solr/handler/ReplicationHandler.java

Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=985672&r1=985671&r2=985672&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Sun Aug 15 13:19:03 2010
@@ -403,7 +403,8 @@ Bug Fixes
 
 * SOLR-2036: Avoid expensive fieldCache ram estimation for the
   admin stats page. (yonik)
-  
+
+* SOLR-2047: ReplicationHandler should accept bool type for enable flag. (koji)  
 
 Other Changes
 ----------------------

Modified: lucene/dev/trunk/solr/src/java/org/apache/solr/handler/ReplicationHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/src/java/org/apache/solr/handler/ReplicationHandler.java?rev=985672&r1=985671&r2=985672&view=diff
==============================================================================
--- lucene/dev/trunk/solr/src/java/org/apache/solr/handler/ReplicationHandler.java (original)
+++ lucene/dev/trunk/solr/src/java/org/apache/solr/handler/ReplicationHandler.java Sun Aug 15 13:19:03 2010
@@ -25,6 +25,7 @@ import org.apache.solr.common.params.Sol
 import org.apache.solr.common.util.FastOutputStream;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.SimpleOrderedMap;
+import org.apache.solr.common.util.StrUtils;
 import org.apache.solr.core.*;
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.response.BinaryQueryResponseWriter;
@@ -771,13 +772,13 @@ public class ReplicationHandler extends 
     registerFileStreamResponseWriter();
     registerCloseHook();
     NamedList slave = (NamedList) initArgs.get("slave");
-    boolean enableSlave = slave != null && (null == slave.get("enable") || "true".equals(slave.get("enable")));
+    boolean enableSlave = isEnabled( slave );
     if (enableSlave) {
       tempSnapPuller = snapPuller = new SnapPuller(slave, this, core);
       isSlave = true;
     }
     NamedList master = (NamedList) initArgs.get("master");
-    boolean enableMaster = master != null && (null == master.get("enable") || "true".equals(master.get("enable")));
+    boolean enableMaster = isEnabled( master );
     if (enableMaster) {
       includeConfFiles = (String) master.get(CONF_FILES);
       if (includeConfFiles != null && includeConfFiles.trim().length() > 0) {
@@ -863,6 +864,16 @@ public class ReplicationHandler extends 
       isMaster = true;
     }
   }
+  
+  // check master or slave is enabled
+  private boolean isEnabled( NamedList params ){
+    if( params == null ) return false;
+    Object enable = params.get( "enable" );
+    if( enable == null ) return true;
+    if( enable instanceof String )
+      return StrUtils.parseBool( (String)enable );
+    return Boolean.TRUE.equals( enable );
+  }
 
   /**
    * register a closehook