deinspanjer
05/27/2017, 12:46 AMfitzoh
05/27/2017, 12:50 AMclass MyObject(val arg: Any){
companion object{
fun create(arg : Any?) = arg?.let{MyObject(arg)}
}
}
gjesse
05/27/2017, 12:51 AMdeinspanjer
05/27/2017, 12:52 AMfitzoh
05/27/2017, 12:52 AMdeinspanjer
05/27/2017, 12:53 AMFunction0<java.io.Serializable>
instead of a string. so I’ve done something nasty somewherefitzoh
05/27/2017, 12:55 AMgjesse
05/27/2017, 12:55 AMdeinspanjer
05/27/2017, 12:58 AMgjesse
05/27/2017, 1:00 AMdeinspanjer
05/27/2017, 1:00 AMgjesse
05/27/2017, 1:01 AMdeinspanjer
05/27/2017, 1:02 AMfinal JsonElement jsonElement = data.toJson();
final JsonObject asJsonObject = jsonElement.getAsJsonObject();
final JSObject wrap = wrap(asJsonObject);
final Object wrapMember = wrap.getMember("GatekeeperEndpointType");
log.debug("Lots of stuff:\ndata ({}): {}\nasJsonObject ({}): {}\nwrap ({}): {}\n wrapMember ({}): {}"
data.getClass().getSimpleName(),
data.toString(),
asJsonObject.getClass().getSimpleName(),
asJsonObject.toString(),
wrap.getClassName(),
wrap.toString(),
gjesse
05/27/2017, 1:05 AMdeinspanjer
05/27/2017, 1:05 AMjava.lang.ClassCastException: com.jsonlogic.JSObjectWrappersKt$wrap$1 cannot be cast to jdk.nashorn.api.scripting.JSObject
override fun getMember(name: String): Any? = data[name].wrap()
fun JsonPrimitive?.wrap(): Any? = {
if (this == null) null
else if (this.isBoolean) this.bool
else if (this.isNumber) this.number
else this.string
}
fitzoh
05/27/2017, 1:12 AMthis
to be null?deinspanjer
05/27/2017, 1:13 AMfitzoh
05/27/2017, 1:15 AMgjesse
05/27/2017, 1:15 AMfitzoh
05/27/2017, 1:15 AMfun Integer?.wrap() : String? {
return if (this == null) "nope" else "$this"
}
fun main(args: Array<String>) {
val a = 5
val b : Integer? = null
println(a)
println(b)
}
deinspanjer
05/27/2017, 1:15 AMfitzoh
05/27/2017, 1:15 AM5
null
deinspanjer
05/27/2017, 1:16 AMgjesse
05/27/2017, 1:17 AMdeinspanjer
05/27/2017, 1:44 AM