You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by dp...@apache.org on 2017/06/18 15:54:53 UTC
[7/8] lucene-solr:master: SOLR-10882: Moves sub evaluator check to
the constructors to catch errors earlier
SOLR-10882: Moves sub evaluator check to the constructors to catch errors earlier
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/aeec043e
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/aeec043e
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/aeec043e
Branch: refs/heads/master
Commit: aeec043ed1cdf6ffd2b92811adde162eab06debd
Parents: 113459a
Author: Dennis Gove <dp...@gmail.com>
Authored: Fri Jun 16 20:10:28 2017 -0400
Committer: Dennis Gove <dp...@gmail.com>
Committed: Sun Jun 18 11:50:58 2017 -0400
----------------------------------------------------------------------
.../solr/client/solrj/io/eval/ConvolutionEvaluator.java | 10 +++++-----
.../solr/client/solrj/io/eval/CorrelationEvaluator.java | 9 +++++----
.../solr/client/solrj/io/eval/CovarianceEvaluator.java | 9 +++++----
.../solrj/io/eval/CumulativeProbabilityEvaluator.java | 9 +++++----
.../solr/client/solrj/io/eval/DescribeEvaluator.java | 10 ++++++----
.../solr/client/solrj/io/eval/DistanceEvaluator.java | 10 ++++++----
.../solrj/io/eval/EmpiricalDistributionEvaluator.java | 9 +++++----
.../solr/client/solrj/io/eval/FindDelayEvaluator.java | 9 +++++----
.../solr/client/solrj/io/eval/HistogramEvaluator.java | 9 +++++----
.../solr/client/solrj/io/eval/MovingAverageEvaluator.java | 9 +++++----
.../solr/client/solrj/io/eval/PercentileEvaluator.java | 9 +++++----
.../solr/client/solrj/io/eval/PredictEvaluator.java | 10 ++++++----
.../apache/solr/client/solrj/io/eval/RankEvaluator.java | 10 ++++++----
.../solr/client/solrj/io/eval/RegressionEvaluator.java | 10 ++++++----
.../solr/client/solrj/io/eval/ReverseEvaluator.java | 10 ++++++----
.../apache/solr/client/solrj/io/eval/ScaleEvaluator.java | 10 ++++++----
.../solr/client/solrj/io/eval/SequenceEvaluator.java | 10 ++++++----
17 files changed, 93 insertions(+), 69 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ConvolutionEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ConvolutionEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ConvolutionEvaluator.java
index 000fa0d..e91620e 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ConvolutionEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ConvolutionEvaluator.java
@@ -18,6 +18,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.List;
+import java.util.Locale;
import java.util.ArrayList;
import org.apache.commons.math3.util.MathArrays;
@@ -35,15 +36,14 @@ public class ConvolutionEvaluator extends ComplexEvaluator implements Expressibl
public ConvolutionEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
}
public List<Number> evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Convolution evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
-
StreamEvaluator colEval1 = subEvaluators.get(0);
StreamEvaluator colEval2 = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CorrelationEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CorrelationEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CorrelationEvaluator.java
index 05db16f..73c9f39 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CorrelationEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CorrelationEvaluator.java
@@ -18,6 +18,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.stat.correlation.PearsonsCorrelation;
import org.apache.solr.client.solrj.io.Tuple;
@@ -34,14 +35,14 @@ public class CorrelationEvaluator extends ComplexEvaluator implements Expressibl
public CorrelationEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
}
public Number evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Correlation evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
StreamEvaluator colEval2 = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CovarianceEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CovarianceEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CovarianceEvaluator.java
index 5778289..9371d78 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CovarianceEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CovarianceEvaluator.java
@@ -18,6 +18,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.stat.correlation.Covariance;
import org.apache.solr.client.solrj.io.Tuple;
@@ -34,14 +35,14 @@ public class CovarianceEvaluator extends ComplexEvaluator implements Expressible
public CovarianceEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
}
public Number evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Covariance evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
StreamEvaluator colEval2 = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CumulativeProbabilityEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CumulativeProbabilityEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CumulativeProbabilityEvaluator.java
index 469e983..9e2bbaf 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CumulativeProbabilityEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/CumulativeProbabilityEvaluator.java
@@ -18,6 +18,7 @@
package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
+import java.util.Locale;
import org.apache.solr.client.solrj.io.Tuple;
import org.apache.solr.client.solrj.io.stream.expr.Explanation;
@@ -33,14 +34,14 @@ public class CumulativeProbabilityEvaluator extends ComplexEvaluator implements
public CumulativeProbabilityEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values (emperical distribution and a number) but found %d",expression,subEvaluators.size()));
+ }
}
public Number evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Cumulative probability expects 2 parameters: an emperical distribution and a number");
- }
-
StreamEvaluator r = subEvaluators.get(0);
StreamEvaluator d = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DescribeEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DescribeEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DescribeEvaluator.java
index 196afe5..e4c7523 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DescribeEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DescribeEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import org.apache.commons.math3.stat.descriptive.DescriptiveStatistics;
@@ -36,14 +37,15 @@ public class DescribeEvaluator extends ComplexEvaluator implements Expressible {
public DescribeEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(1 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting one column but found %d",expression,subEvaluators.size()));
+ }
+
}
public Tuple evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 1) {
- throw new IOException("describe expects 1 column as a parameters");
- }
-
StreamEvaluator colEval = subEvaluators.get(0);
List<Number> numbers = (List<Number>)colEval.evaluate(tuple);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DistanceEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DistanceEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DistanceEvaluator.java
index f4ac319..12591ad 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DistanceEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/DistanceEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.ml.distance.EuclideanDistance;
import org.apache.solr.client.solrj.io.Tuple;
@@ -35,14 +36,15 @@ public class DistanceEvaluator extends ComplexEvaluator implements Expressible {
public DistanceEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
+
}
public Number evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Distance evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
StreamEvaluator colEval2 = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/EmpiricalDistributionEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/EmpiricalDistributionEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/EmpiricalDistributionEvaluator.java
index 6885352..8456b4d 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/EmpiricalDistributionEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/EmpiricalDistributionEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Arrays;
@@ -38,14 +39,14 @@ public class EmpiricalDistributionEvaluator extends ComplexEvaluator implements
public EmpiricalDistributionEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(1 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting one column but found %d",expression,subEvaluators.size()));
+ }
}
public Tuple evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 1) {
- throw new IOException("Empirical dist expects 1 column as a parameters");
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
List<Number> numbers1 = (List<Number>)colEval1.evaluate(tuple);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/FindDelayEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/FindDelayEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/FindDelayEvaluator.java
index 0cdd153..4ffaee5 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/FindDelayEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/FindDelayEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.util.MathArrays;
import org.apache.solr.client.solrj.io.Tuple;
@@ -35,14 +36,14 @@ public class FindDelayEvaluator extends ComplexEvaluator implements Expressible
public FindDelayEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
}
public Number evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Finddelay evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
StreamEvaluator colEval2 = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/HistogramEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/HistogramEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/HistogramEvaluator.java
index aa8408b..0217bae 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/HistogramEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/HistogramEvaluator.java
@@ -20,6 +20,7 @@ import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import org.apache.commons.math3.random.EmpiricalDistribution;
@@ -38,14 +39,14 @@ public class HistogramEvaluator extends ComplexEvaluator implements Expressible
public HistogramEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
}
public List<Map> evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Histogram evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
List<Number> numbers1 = (List<Number>)colEval1.evaluate(tuple);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/MovingAverageEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/MovingAverageEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/MovingAverageEvaluator.java
index 783116e..bb4909b 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/MovingAverageEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/MovingAverageEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.stat.descriptive.DescriptiveStatistics;
import org.apache.solr.client.solrj.io.Tuple;
@@ -35,14 +36,14 @@ public class MovingAverageEvaluator extends ComplexEvaluator implements Expressi
public MovingAverageEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
}
public List<Number> evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Moving average evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval = subEvaluators.get(0);
StreamEvaluator windowEval = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PercentileEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PercentileEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PercentileEvaluator.java
index 658e66a..6a51360 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PercentileEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PercentileEvaluator.java
@@ -18,6 +18,7 @@
package org.apache.solr.client.solrj.io.eval;
import java.util.List;
+import java.util.Locale;
import java.io.IOException;
import org.apache.solr.client.solrj.io.Tuple;
@@ -35,13 +36,13 @@ public class PercentileEvaluator extends ComplexEvaluator implements Expressible
public PercentileEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values (array and number) but found %d",expression,subEvaluators.size()));
+ }
}
public Number evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Percentile expects 2 parameters: an array and a number");
- }
-
StreamEvaluator colEval = subEvaluators.get(0);
List<Number> column = (List<Number>)colEval.evaluate(tuple);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PredictEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PredictEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PredictEvaluator.java
index 0d1e763..af8a7f0 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PredictEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/PredictEvaluator.java
@@ -18,6 +18,7 @@
package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
+import java.util.Locale;
import org.apache.solr.client.solrj.io.Tuple;
import org.apache.solr.client.solrj.io.stream.expr.Explanation;
@@ -33,14 +34,15 @@ public class PredictEvaluator extends ComplexEvaluator implements Expressible {
public PredictEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values (regression result and a number) but found %d",expression,subEvaluators.size()));
+ }
+
}
public Number evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Predict expects 2 parameters: a regression result and a number");
- }
-
StreamEvaluator r = subEvaluators.get(0);
StreamEvaluator d = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RankEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RankEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RankEvaluator.java
index 2086c92..88a730d 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RankEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RankEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.stat.ranking.NaturalRanking;
import org.apache.solr.client.solrj.io.Tuple;
@@ -35,14 +36,15 @@ public class RankEvaluator extends ComplexEvaluator implements Expressible {
public RankEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(1 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting one value but found %d",expression,subEvaluators.size()));
+ }
+
}
public List<Number> evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 1) {
- throw new IOException("Rank evaluator expects 1 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval = subEvaluators.get(0);
List<Number> numbers = (List<Number>)colEval.evaluate(tuple);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RegressionEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RegressionEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RegressionEvaluator.java
index 42a6955..263a69a 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RegressionEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/RegressionEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import org.apache.commons.math3.stat.regression.SimpleRegression;
@@ -36,14 +37,15 @@ public class RegressionEvaluator extends ComplexEvaluator implements Expressible
public RegressionEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two columns but found %d",expression,subEvaluators.size()));
+ }
+
}
public Tuple evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Regress expects 2 columns as parameters");
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
StreamEvaluator colEval2 = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ReverseEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ReverseEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ReverseEvaluator.java
index cb11c91..56e0b63 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ReverseEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ReverseEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Locale;
import org.apache.solr.client.solrj.io.Tuple;
import org.apache.solr.client.solrj.io.stream.expr.Explanation;
@@ -34,14 +35,15 @@ public class ReverseEvaluator extends ComplexEvaluator implements Expressible {
public ReverseEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(1 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting one value but found %d",expression,subEvaluators.size()));
+ }
+
}
public List<Number> evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 1) {
- throw new IOException("Reverse evaluator expects 1 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator colEval1 = subEvaluators.get(0);
List<Number> numbers1 = (List<Number>)colEval1.evaluate(tuple);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ScaleEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ScaleEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ScaleEvaluator.java
index f45e2c4..806e6f6 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ScaleEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/ScaleEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.util.MathArrays;
import org.apache.solr.client.solrj.io.Tuple;
@@ -35,14 +36,15 @@ public class ScaleEvaluator extends ComplexEvaluator implements Expressible {
public ScaleEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(2 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting two values but found %d",expression,subEvaluators.size()));
+ }
+
}
public List<Number> evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 2) {
- throw new IOException("Scale evaluator expects 2 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator numEval = subEvaluators.get(0);
StreamEvaluator colEval1 = subEvaluators.get(1);
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/aeec043e/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SequenceEvaluator.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SequenceEvaluator.java b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SequenceEvaluator.java
index c45e551..c6db106 100644
--- a/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SequenceEvaluator.java
+++ b/solr/solrj/src/java/org/apache/solr/client/solrj/io/eval/SequenceEvaluator.java
@@ -19,6 +19,7 @@ package org.apache.solr.client.solrj.io.eval;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import java.util.Locale;
import org.apache.commons.math3.util.MathArrays;
import org.apache.solr.client.solrj.io.Tuple;
@@ -35,14 +36,15 @@ public class SequenceEvaluator extends ComplexEvaluator implements Expressible {
public SequenceEvaluator(StreamExpression expression, StreamFactory factory) throws IOException {
super(expression, factory);
+
+ if(3 != subEvaluators.size()){
+ throw new IOException(String.format(Locale.ROOT,"Invalid expression %s - expecting three values but found %d",expression,subEvaluators.size()));
+ }
+
}
public List<Number> evaluate(Tuple tuple) throws IOException {
- if(subEvaluators.size() != 3) {
- throw new IOException("Sequence evaluator expects 3 parameters found: "+subEvaluators.size());
- }
-
StreamEvaluator sizeEval = subEvaluators.get(0);
StreamEvaluator startEval = subEvaluators.get(1);
StreamEvaluator strideEval = subEvaluators.get(2);