aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiangrui Meng <meng@databricks.com>2015-05-21 13:06:53 -0700
committerXiangrui Meng <meng@databricks.com>2015-05-21 13:06:53 -0700
commitcdc7c055c931c4c931a11b510de473455f3256da (patch)
tree5cd76b87f521bead720f66a4bd4332d95e1bd74e
parent6d75ed7e5ccf6c58143de4608115f9a2b3ff6cf4 (diff)
downloadspark-cdc7c055c931c4c931a11b510de473455f3256da.tar.gz
spark-cdc7c055c931c4c931a11b510de473455f3256da.tar.bz2
spark-cdc7c055c931c4c931a11b510de473455f3256da.zip
[SPARK-7498] [MLLIB] add varargs back to setDefault
We removed `varargs` due to Java compilation issues. That was a false alarm because I didn't run `build/sbt clean`. So this PR reverts the changes. jkbradley Author: Xiangrui Meng <meng@databricks.com> Closes #6320 from mengxr/SPARK-7498 and squashes the following commits: 74a7259 [Xiangrui Meng] add varargs back to setDefault
-rw-r--r--mllib/src/main/scala/org/apache/spark/ml/param/params.scala7
-rw-r--r--mllib/src/test/java/org/apache/spark/ml/param/JavaTestParams.java1
2 files changed, 4 insertions, 4 deletions
diff --git a/mllib/src/main/scala/org/apache/spark/ml/param/params.scala b/mllib/src/main/scala/org/apache/spark/ml/param/params.scala
index c33b66d31c..94abfcda5c 100644
--- a/mllib/src/main/scala/org/apache/spark/ml/param/params.scala
+++ b/mllib/src/main/scala/org/apache/spark/ml/param/params.scala
@@ -438,19 +438,18 @@ trait Params extends Identifiable with Serializable {
* @param value the default value
*/
protected final def setDefault[T](param: Param[T], value: T): this.type = {
- defaultParamMap.put(param, value)
+ defaultParamMap.put(param -> value)
this
}
/**
* Sets default values for a list of params.
*
- * Note: Java developers should use the single-parameter [[setDefault()]].
- * Annotating this with varargs causes compilation failures. See SPARK-7498.
* @param paramPairs a list of param pairs that specify params and their default values to set
* respectively. Make sure that the params are initialized before this method
* gets called.
*/
+ @varargs
protected final def setDefault(paramPairs: ParamPair[_]*): this.type = {
paramPairs.foreach { p =>
setDefault(p.param.asInstanceOf[Param[Any]], p.value)
@@ -559,7 +558,7 @@ final class ParamMap private[ml] (private val map: mutable.Map[Param[Any], Any])
/**
* Puts a (param, value) pair (overwrites if the input param exists).
*/
- def put[T](param: Param[T], value: T): this.type = put(ParamPair(param, value))
+ def put[T](param: Param[T], value: T): this.type = put(param -> value)
/**
* Puts a list of param pairs (overwrites if the input params exists).
diff --git a/mllib/src/test/java/org/apache/spark/ml/param/JavaTestParams.java b/mllib/src/test/java/org/apache/spark/ml/param/JavaTestParams.java
index 3a41890b92..947ae3a2ce 100644
--- a/mllib/src/test/java/org/apache/spark/ml/param/JavaTestParams.java
+++ b/mllib/src/test/java/org/apache/spark/ml/param/JavaTestParams.java
@@ -81,5 +81,6 @@ public class JavaTestParams extends JavaParams {
ParamValidators.inArray(validStrings));
setDefault(myIntParam_, 1);
setDefault(myDoubleParam_, 0.5);
+ setDefault(myIntParam().w(1), myDoubleParam().w(0.5));
}
}