tipsy
06/30/2018, 1:04 PMsuresh
07/08/2018, 3:54 AMtipsy
07/08/2018, 9:01 AMfromJsonMapper
and `toJsonMapper`:
JavalinJson.fromJsonMapper = object : FromJsonMapper {
override fun <T> map(json: String, targetClass: Class<T>) = gson.fromJson(json, targetClass)
}
JavalinJson.toJsonMapper = object : ToJsonMapper {
override fun map(obj: Any): String = gson.toJson(obj)
}
gson.fromJson(json, targetClass)
and gson.toJson(obj)
suresh
07/08/2018, 9:33 PM$ jdeps --jdk-internals target/sample-app-1.0-SNAPSHOT-uber.jar
Warning: split package: sun.security.ssl jrt:/java.base target/sample-app-1.0-SNAPSHOT-uber.jar
sample-app-1.0-SNAPSHOT-uber.jar -> JDK removed internal API
sample-app-1.0-SNAPSHOT-uber.jar -> java.base
io.javalin.core.util.RouteOverviewUtilKt -> sun.reflect.ConstantPool JDK internal API (JDK removed internal API)
org.conscrypt.Platform -> sun.security.x509.AlgorithmId JDK internal API (java.base)
sun.security.ssl.ServerHandshaker -> sun.security.action.GetPropertyAction JDK internal API (java.base)
sun.security.ssl.ServerHandshaker -> sun.security.util.AlgorithmDecomposer JDK internal API (java.base)
sun.security.ssl.ServerHandshaker -> sun.security.util.KeyUtil JDK internal API (java.base)
sun.security.ssl.ServerHandshaker -> sun.security.util.LegacyAlgorithmConstraints JDK internal API (java.base)
tipsy
07/08/2018, 9:48 PMsuresh
07/08/2018, 9:50 PMjdeps
will analyze all the classes anyway.tipsy
07/08/2018, 10:10 PMsuresh
07/08/2018, 11:38 PMtipsy
07/08/2018, 11:52 PMsuresh
08/27/2018, 4:03 AM@NotNull
@Override
public String map(Object obj) {
Type type = obj.getClass();
JsonAdapter<Object> adapter = moshi().adapter(type);
return adapter.toJson(obj);
}
@NotNull
@Override
public String map(Object obj) {
Class<?> clazz = obj.getClass();
if (Res.class.isAssignableFrom(clazz)) {
return moshi().adapter(Res.class).nullSafe().toJson((Res) obj);
} else {
return moshi().adapter(Object.class).toJson(obj);
}
}
tipsy
08/27/2018, 7:49 AM