From 409ea08bb2a381615723354177793994f19c5250 Mon Sep 17 00:00:00 2001 From: Xiangrui Meng Date: Tue, 12 May 2015 18:16:33 -0700 Subject: [PATCH] minor updates --- .../main/scala/org/apache/spark/ml/Model.scala | 3 +++ .../scala/org/apache/spark/ml/param/params.scala | 2 +- .../apache/spark/ml/param/JavaTestParams.java | 16 ++++++++-------- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/mllib/src/main/scala/org/apache/spark/ml/Model.scala b/mllib/src/main/scala/org/apache/spark/ml/Model.scala index f310db3128b24..7fd515369b19b 100644 --- a/mllib/src/main/scala/org/apache/spark/ml/Model.scala +++ b/mllib/src/main/scala/org/apache/spark/ml/Model.scala @@ -34,6 +34,9 @@ abstract class Model[M <: Model[M]] extends Transformer { */ var parent: Estimator[M] = _ + /** + * Sets the parent of this model (Java API). + */ def setParent(parent: Estimator[M]): M = { this.parent = parent this.asInstanceOf[M] 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 b971e7d05f1bf..d5c3839ae8131 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 @@ -495,7 +495,7 @@ trait Params extends Identifiable with Serializable { /** Validates that the input param belongs to this instance. */ private def shouldOwn(param: Param[_]): Unit = { - require(param.parent == uid, s"Param $param does not belong to $this.") + require(param.parent == uid && hasParam(param.name), s"Param $param does not belong to $this.") } /** 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 fbaaefeb7680e..9039a7a7df674 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 @@ -29,20 +29,20 @@ public class JavaTestParams extends JavaParams { public JavaTestParams() { - this._uid = Identifiable$.MODULE$.randomUID("javaTestParams"); - _init(); + this.uid_ = Identifiable$.MODULE$.randomUID("javaTestParams"); + init(); } public JavaTestParams(String uid) { - this._uid = uid; - _init(); + this.uid_ = uid; + init(); } - private String _uid; + private String uid_; @Override public String uid() { - return _uid; + return uid_; } public IntParam myIntParam; @@ -63,13 +63,13 @@ public JavaTestParams setMyDoubleParam(double value) { public Param myStringParam; - public String getMyStringParam() { return (String)getOrDefault(myStringParam); } + public String getMyStringParam() { return getOrDefault(myStringParam); } public JavaTestParams setMyStringParam(String value) { set(myStringParam, value); return this; } - private void _init() { + private void init() { myIntParam = new IntParam(this, "myIntParam", "this is an int param", ParamValidators.gt(0)); myDoubleParam = new DoubleParam(this, "myDoubleParam", "this is a double param", ParamValidators.inRange(0.0, 1.0));