Github user ashutakGG commented on a diff in the pull request:

    https://github.com/apache/incubator-griffin/pull/434#discussion_r224432819
  
    --- Diff: 
measure/src/main/scala/org/apache/griffin/measure/configuration/dqdefinition/DQConfig.scala
 ---
    @@ -148,12 +148,12 @@ case class EvaluateRuleParam( @JsonProperty("rules") 
private val rules: List[Rul
     @JsonInclude(Include.NON_NULL)
     case class RuleParam(@JsonProperty("dsl.type") private val dslType: String,
                          @JsonProperty("dq.type") private val dqType: String,
    -                     @JsonProperty("in.dataframe.name") private val 
inDfName: String,
    -                     @JsonProperty("out.dataframe.name") private val 
outDfName: String,
    -                     @JsonProperty("rule") private val rule: String,
    -                     @JsonProperty("details") private val details: 
Map[String, Any],
    -                     @JsonProperty("cache") private val cache: Boolean,
    -                     @JsonProperty("out") private val outputs: 
List[RuleOutputParam]
    +                     @JsonProperty("in.dataframe.name") private val 
inDfName: String = null,
    +                     @JsonProperty("out.dataframe.name") private val 
outDfName: String = null,
    +                     @JsonProperty("rule") private val rule: String = null,
    +                     @JsonProperty("details") private val details: 
Map[String, Any] = null,
    --- End diff --
    
    Yes, it exactly is. Actually I expected such question :)
    There is a bug in `jackson` support for scala ["Case classes with option 
types don't follow serialization 
configuration"](https://github.com/FasterXML/jackson-module-scala/issues/32).
    Long story short, It does not support any default values and puts `null`s 
everywhere. So, if we want to use this classes outside of jackson at the same 
way as with jackson, `null`s is only chose we have.


---

Reply via email to