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 2016/06/01 17:01:05 UTC

lucene-solr:master: Revert "SOLR-9161: SolrPluginUtils.invokeSetters now accommodates setter variants"

Repository: lucene-solr
Updated Branches:
  refs/heads/master 7be69c603 -> 245e4839d


Revert "SOLR-9161: SolrPluginUtils.invokeSetters now accommodates setter variants"

This reverts commit 50658dd93d16eec37e906a24446146609cc93706.

Conflicts:
	solr/CHANGES.txt


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/245e4839
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/245e4839
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/245e4839

Branch: refs/heads/master
Commit: 245e4839d1e50ed05a59a2f2ee82be713cc7e6fc
Parents: 7be69c6
Author: Chris Hostetter <ho...@apache.org>
Authored: Wed Jun 1 09:58:27 2016 -0700
Committer: Chris Hostetter <ho...@apache.org>
Committed: Wed Jun 1 09:58:27 2016 -0700

----------------------------------------------------------------------
 solr/CHANGES.txt                                |  2 --
 .../org/apache/solr/util/SolrPluginUtils.java   | 14 ++++------
 .../apache/solr/util/SolrPluginUtilsTest.java   | 28 --------------------
 3 files changed, 5 insertions(+), 39 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/245e4839/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index d395dfc..d0a0cb8 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -344,8 +344,6 @@ Other Changes
 
 * SOLR-9110: Move JoinFromCollection- SubQueryTransformer- BlockJoinFacet- Distrib Tests to SolrCloudTestCase  (Mikhail Khludnev)
 
-* SOLR-9161: SolrPluginUtils.invokeSetters now accommodates setter variants (Christine Poerschke)
-
 * SOLR-9136: Separate out the error statistics into server-side error vs client-side error
   (Jessica Cheng Mallet via Erick Erickson)
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/245e4839/solr/core/src/java/org/apache/solr/util/SolrPluginUtils.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/util/SolrPluginUtils.java b/solr/core/src/java/org/apache/solr/util/SolrPluginUtils.java
index 33c108d..b30cc06 100644
--- a/solr/core/src/java/org/apache/solr/util/SolrPluginUtils.java
+++ b/solr/core/src/java/org/apache/solr/util/SolrPluginUtils.java
@@ -1066,8 +1066,8 @@ public class SolrPluginUtils {
       String key = entry.getKey();
       String setterName = "set" + String.valueOf(Character.toUpperCase(key.charAt(0))) + key.substring(1);
       try {
+        final Method method = findSetter(clazz, setterName, key);
         final Object val = entry.getValue();
-        final Method method = findSetter(clazz, setterName, key, val.getClass());
         method.invoke(bean, val);
       } catch (InvocationTargetException | IllegalAccessException e1) {
         throw new RuntimeException("Error invoking setter " + setterName + " on class : " + clazz.getName(), e1);
@@ -1075,14 +1075,10 @@ public class SolrPluginUtils {
     }
   }
 
-  private static Method findSetter(Class<?> clazz, String setterName, String key, Class<?> paramClazz) {
-    try {
-      return clazz.getMethod(setterName, new Class<?>[] { paramClazz });
-    } catch (NoSuchMethodException e) {
-      for (Method m : clazz.getMethods()) {
-        if (m.getName().equals(setterName) && m.getParameterTypes().length == 1) {
-          return m;
-        }
+  private static Method findSetter(Class<?> clazz, String setterName, String key) {
+    for (Method m : clazz.getMethods()) {
+      if (m.getName().equals(setterName) && m.getParameterTypes().length == 1) {
+        return m;
       }
     }
     throw new RuntimeException("No setter corrresponding to '" + key + "' in " + clazz.getName());

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/245e4839/solr/core/src/test/org/apache/solr/util/SolrPluginUtilsTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/util/SolrPluginUtilsTest.java b/solr/core/src/test/org/apache/solr/util/SolrPluginUtilsTest.java
index fc50680..33e9291 100644
--- a/solr/core/src/test/org/apache/solr/util/SolrPluginUtilsTest.java
+++ b/solr/core/src/test/org/apache/solr/util/SolrPluginUtilsTest.java
@@ -455,34 +455,6 @@ public class SolrPluginUtilsTest extends SolrTestCaseJ4 {
     assertEquals(3, q.build().getMinimumNumberShouldMatch());
   }
 
-  private class InvokeSettersTestClass {
-    private float aFloat = random().nextFloat();
-    public float getAFloat() {
-      return aFloat;
-    }
-    public void setAFloat(float aFloat) {
-      this.aFloat = aFloat;
-    }
-    public void setAFloat(String aFloat) {
-      this.aFloat = Float.parseFloat(aFloat);
-    }
-  }
-
-  @Test
-  public void testInvokeSetters() {
-    final Float theFloat = new Float(random().nextFloat());
-    implTestInvokeSetters(theFloat, theFloat);
-    implTestInvokeSetters(theFloat, theFloat.toString());
-  }
-
-  public void implTestInvokeSetters(final Float theFloat, final Object theFloatObject) {
-    final InvokeSettersTestClass bean = new InvokeSettersTestClass();
-    final Map<String,Object> initArgs = new HashMap<>();
-    initArgs.put("aFloat", theFloatObject);
-    SolrPluginUtils.invokeSetters(bean, initArgs.entrySet());
-    assertEquals(bean.getAFloat(), theFloat.floatValue(), 0.0);
-  }
-
   /** macro */
   public String pe(CharSequence s) {
     return SolrPluginUtils.partialEscape(s).toString();