You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ho...@apache.org on 2017/06/14 02:03:07 UTC
[31/35] lucene-solr:jira/SOLR-10834: Revert "SOLR-8392: Remove
instanceof checks on return value of SolrParam::get"
Revert "SOLR-8392: Remove instanceof checks on return value of SolrParam::get"
This reverts commit 94220a01e14f53e0632bfbc1678661ad9c67320a.
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/d1db5f7a
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/d1db5f7a
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/d1db5f7a
Branch: refs/heads/jira/SOLR-10834
Commit: d1db5f7af9edb2125583c6c63fa322380ee57cf7
Parents: 9a0d9e8
Author: Mike Drob <md...@apache.org>
Authored: Tue Jun 13 14:18:52 2017 -0700
Committer: Mike Drob <md...@apache.org>
Committed: Tue Jun 13 14:19:05 2017 -0700
----------------------------------------------------------------------
solr/CHANGES.txt | 2 --
.../org/apache/solr/handler/SchemaHandler.java | 6 +++++-
.../org/apache/solr/rest/BaseSolrResource.java | 6 ++++--
.../apache/solr/common/params/MapSolrParams.java | 17 +++++++++++++----
4 files changed, 22 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/d1db5f7a/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 7810c81..a07b68f 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -260,8 +260,6 @@ Other Changes
* SOLR-10800: Factor out HttpShardHandler.transformReplicasToShardUrls from HttpShardHandler.prepDistributed.
(Domenico Fabio Marino, Christine Poerschke)
-* SOLR-8392: Remove instanceof checks on return value of SolrParam::get (Mike Drob, Varun Thacker)
-
================== 6.7.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/d1db5f7a/solr/core/src/java/org/apache/solr/handler/SchemaHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/handler/SchemaHandler.java b/solr/core/src/java/org/apache/solr/handler/SchemaHandler.java
index 626f655..e3e292b 100644
--- a/solr/core/src/java/org/apache/solr/handler/SchemaHandler.java
+++ b/solr/core/src/java/org/apache/solr/handler/SchemaHandler.java
@@ -138,7 +138,11 @@ public class SchemaHandler extends RequestHandlerBase implements SolrCoreAware,
break;
}
case "/schema/zkversion": {
- int refreshIfBelowVersion = req.getParams().getInt("refreshIfBelowVersion", -1);
+ int refreshIfBelowVersion = -1;
+ Object refreshParam = req.getParams().get("refreshIfBelowVersion");
+ if (refreshParam != null)
+ refreshIfBelowVersion = (refreshParam instanceof Number) ? ((Number) refreshParam).intValue()
+ : Integer.parseInt(refreshParam.toString());
int zkVersion = -1;
IndexSchema schema = req.getSchema();
if (schema instanceof ManagedIndexSchema) {
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/d1db5f7a/solr/core/src/java/org/apache/solr/rest/BaseSolrResource.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/rest/BaseSolrResource.java b/solr/core/src/java/org/apache/solr/rest/BaseSolrResource.java
index cc1eeb2..5a9310d 100644
--- a/solr/core/src/java/org/apache/solr/rest/BaseSolrResource.java
+++ b/solr/core/src/java/org/apache/solr/rest/BaseSolrResource.java
@@ -125,9 +125,11 @@ public abstract class BaseSolrResource extends ServerResource {
SolrCore.preDecorateResponse(solrRequest, solrResponse);
// client application can set a timeout for update requests
- String updateTimeoutSecsParam = getSolrRequest().getParams().get(UPDATE_TIMEOUT_SECS);
+ Object updateTimeoutSecsParam = getSolrRequest().getParams().get(UPDATE_TIMEOUT_SECS);
if (updateTimeoutSecsParam != null)
- updateTimeoutSecs = Integer.parseInt(updateTimeoutSecsParam);
+ updateTimeoutSecs = (updateTimeoutSecsParam instanceof Number)
+ ? ((Number) updateTimeoutSecsParam).intValue()
+ : Integer.parseInt(updateTimeoutSecsParam.toString());
}
}
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/d1db5f7a/solr/solrj/src/java/org/apache/solr/common/params/MapSolrParams.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/common/params/MapSolrParams.java b/solr/solrj/src/java/org/apache/solr/common/params/MapSolrParams.java
index 53eff87..5454fca 100644
--- a/solr/solrj/src/java/org/apache/solr/common/params/MapSolrParams.java
+++ b/solr/solrj/src/java/org/apache/solr/common/params/MapSolrParams.java
@@ -20,7 +20,7 @@ import java.util.Iterator;
import java.util.Map;
/**
- * {@link SolrParams} implementation that can be built from and is backed by a {@link Map}.
+ *
*/
public class MapSolrParams extends SolrParams {
protected final Map<String,String> map;
@@ -31,13 +31,22 @@ public class MapSolrParams extends SolrParams {
@Override
public String get(String name) {
- return map.get(name);
+ Object o = map.get(name);
+ if(o == null) return null;
+ if (o instanceof String) return (String) o;
+ if (o instanceof String[]) {
+ String[] strings = (String[]) o;
+ if(strings.length == 0) return null;
+ return strings[0];
+ }
+ return String.valueOf(o);
}
@Override
public String[] getParams(String name) {
- String val = map.get(name);
- return val==null ? null : new String[]{val};
+ Object val = map.get(name);
+ if (val instanceof String[]) return (String[]) val;
+ return val==null ? null : new String[]{String.valueOf(val)};
}
@Override