LibJF/libjf-base/src/main/java/io/gitlab/jfronny/libjf/serialize/SerializationMode.java

25 lines
963 B
Java

package io.gitlab.jfronny.libjf.serialize;
import io.gitlab.jfronny.commons.serialize.SerializeReader;
import io.gitlab.jfronny.commons.serialize.SerializeWriter;
import io.gitlab.jfronny.commons.serialize.json.JsonWriter;
public class SerializationMode {
public static <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> void asConfig(Reader reader) {
reader.setLenient(true)
.setSerializeSpecialFloatingPointValues(true);
}
public static <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void asConfig(Writer writer) {
writer.setLenient(true)
.setSerializeSpecialFloatingPointValues(true)
.setSerializeNulls(true);
if (writer instanceof JsonWriter jw) {
jw.setIndent(" ")
.setNewline("\n")
.setOmitQuotes(true)
.setCommentUnexpectedNames(true);
}
}
}