fix(serialize-generator): Patch related components to use Exception instead of Throwable
This commit is contained in:
parent
54f16611cc
commit
b669803fa1
|
@ -41,7 +41,7 @@ final class SqlDateTypeAdapter extends TypeAdapter<java.sql.Date> {
|
|||
private SqlDateTypeAdapter() {}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(java.sql.Date value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(java.sql.Date value, Writer writer) throws TEx, MalformedDataException {
|
||||
if (value == null) {
|
||||
writer.nullValue();
|
||||
return;
|
||||
|
@ -54,7 +54,7 @@ final class SqlDateTypeAdapter extends TypeAdapter<java.sql.Date> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> java.sql.Date deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> java.sql.Date deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
String s = reader.nextString();
|
||||
synchronized (this) {
|
||||
TimeZone originalTimeZone = format.getTimeZone(); // Save the original time zone
|
||||
|
|
|
@ -44,7 +44,7 @@ final class SqlTimeTypeAdapter extends TypeAdapter<Time> {
|
|||
private SqlTimeTypeAdapter() {}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Time value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Time value, Writer writer) throws TEx, MalformedDataException {
|
||||
if (value == null) {
|
||||
writer.nullValue();
|
||||
return;
|
||||
|
@ -57,7 +57,7 @@ final class SqlTimeTypeAdapter extends TypeAdapter<Time> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Time deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Time deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
if (reader.peek() == Token.NULL) {
|
||||
reader.nextNull();
|
||||
return null;
|
||||
|
|
|
@ -44,12 +44,12 @@ class SqlTimestampTypeAdapterFactory implements TypeAdapterFactory {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Timestamp value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Timestamp value, Writer writer) throws TEx, MalformedDataException {
|
||||
dateTypeAdapter.serialize(value, writer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Timestamp deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Timestamp deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
Date date = dateTypeAdapter.deserialize(reader);
|
||||
return date != null ? new Timestamp(date.getTime()) : null;
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ import java.io.StringWriter;
|
|||
import java.lang.reflect.Type;
|
||||
import java.util.Objects;
|
||||
|
||||
public class DatabindSerializer<TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>, Writer extends SerializeWriter<TEx, Writer>> implements Serializer {
|
||||
public class DatabindSerializer<TEx extends Exception, Reader extends SerializeReader<TEx, Reader>, Writer extends SerializeWriter<TEx, Writer>> implements Serializer {
|
||||
private final Transport<TEx, Reader, Writer> transport;
|
||||
private final ObjectMapper mapper;
|
||||
|
||||
|
|
|
@ -50,11 +50,11 @@ public class ObjectMapper implements WithScopedValue<ObjectMapper> {
|
|||
return this;
|
||||
}
|
||||
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>, T> T deserialize(Class<T> type, Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>, T> T deserialize(Class<T> type, Reader reader) throws TEx, MalformedDataException {
|
||||
return this.<T, TEx, MalformedDataException>withContext(() -> getAdapter(type).deserialize(reader));
|
||||
}
|
||||
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>, T> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>, T> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
this.<TEx, MalformedDataException>withContext(() -> getAdapter((Class<T>) value.getClass()).serialize(value, writer));
|
||||
}
|
||||
|
||||
|
@ -167,12 +167,12 @@ public class ObjectMapper implements WithScopedValue<ObjectMapper> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return delegate().deserialize(reader);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
delegate().serialize(value, writer);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,12 +15,12 @@ public class HierarchyAdapter<T> extends TypeAdapter<T> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
baseAdapter.serialize(value, writer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
var result = baseAdapter.deserialize(reader);
|
||||
if (result == null) return null;
|
||||
if (!type.isInstance(result)) {
|
||||
|
|
|
@ -38,7 +38,7 @@ public class ArrayTypeAdapterFactory implements TypeAdapterFactory {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Object value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Object value, Writer writer) throws TEx, MalformedDataException {
|
||||
if (value == null) {
|
||||
writer.nullValue();
|
||||
return;
|
||||
|
@ -53,7 +53,7 @@ public class ArrayTypeAdapterFactory implements TypeAdapterFactory {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Object deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Object deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
if (reader.peek() == Token.NULL) {
|
||||
reader.nextNull();
|
||||
return null;
|
||||
|
|
|
@ -33,7 +33,7 @@ public class DefaultDateTypeAdapter extends TypeAdapter<Date> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Date value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Date value, Writer writer) throws TEx, MalformedDataException {
|
||||
DateFormat dateFormat = dateFormats.getFirst();
|
||||
String dateFormatAsString;
|
||||
// Needs to be synchronized since JDK DateFormat classes are not thread-safe
|
||||
|
@ -45,7 +45,7 @@ public class DefaultDateTypeAdapter extends TypeAdapter<Date> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Date deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Date deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
String s = reader.nextString();
|
||||
// Needs to be synchronized since JDK DateFormat classes are not thread-safe
|
||||
synchronized (dateFormats) {
|
||||
|
|
|
@ -76,12 +76,12 @@ public class EnumTypeAdapterFactory implements TypeAdapterFactory {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value == null ? null : constantToName.get(value));
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
String key = reader.nextString();
|
||||
T constant = nameToConstant.get(key);
|
||||
return (constant == null) ? stringToConstant.get(key) : constant;
|
||||
|
|
|
@ -52,7 +52,7 @@ public class MapTypeAdapterFactory implements TypeAdapterFactory {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Map<K, V> value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Map<K, V> value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.beginObject();
|
||||
Map<String, Tuple<V, List<String>>> tmp = new LinkedHashMap<>();
|
||||
List<Map.Entry<K, V>> toWrite = new ArrayList<>(value.entrySet());
|
||||
|
@ -100,7 +100,7 @@ public class MapTypeAdapterFactory implements TypeAdapterFactory {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Map<K, V> deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Map<K, V> deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
Token peek = reader.peek();
|
||||
Map<K, V> map = new HashMap<>();
|
||||
if (peek == Token.BEGIN_ARRAY) {
|
||||
|
|
|
@ -19,12 +19,12 @@ public class TypeAdapterRuntimeTypeWrapper<T> extends TypeAdapter<T> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(T value, Writer writer) throws TEx {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> T deserialize(Reader reader) throws TEx {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,12 +25,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {boolean.class, Boolean.class})
|
||||
public static class BooleanTypeAdapter extends TypeAdapter<Boolean> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Boolean value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Boolean value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Boolean deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Boolean deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
if (reader.peek() == Token.STRING) {
|
||||
// special casing for boolean strings
|
||||
String value = reader.nextString();
|
||||
|
@ -49,12 +49,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {byte.class, Byte.class})
|
||||
public static class ByteTypeAdapter extends TypeAdapter<Byte> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Byte value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Byte value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Byte deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Byte deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
int value;
|
||||
try {
|
||||
value = reader.nextInt();
|
||||
|
@ -72,12 +72,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {short.class, Short.class})
|
||||
public static class ShortTypeAdapter extends TypeAdapter<Short> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Short value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Short value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Short deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Short deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
int value;
|
||||
try {
|
||||
value = reader.nextInt();
|
||||
|
@ -95,12 +95,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {int.class, Integer.class})
|
||||
public static class IntegerTypeAdapter extends TypeAdapter<Integer> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Integer value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Integer value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Integer deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Integer deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return reader.nextInt();
|
||||
} catch (NumberFormatException e) {
|
||||
|
@ -112,12 +112,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {long.class, Long.class})
|
||||
public static class LongTypeAdapter extends TypeAdapter<Long> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Long value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Long value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Long deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Long deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return reader.nextLong();
|
||||
} catch (NumberFormatException e) {
|
||||
|
@ -129,12 +129,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {float.class, Float.class})
|
||||
public static class FloatTypeAdapter extends TypeAdapter<Float> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Float value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Float value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Float deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Float deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return (float) reader.nextDouble();
|
||||
} catch (NumberFormatException e) {
|
||||
|
@ -146,12 +146,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {double.class, Double.class})
|
||||
public static class DoubleTypeAdapter extends TypeAdapter<Double> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Double value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Double value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Double deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Double deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return reader.nextDouble();
|
||||
} catch (NumberFormatException e) {
|
||||
|
@ -163,12 +163,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = {char.class, Character.class})
|
||||
public static class CharacterTypeAdapter extends TypeAdapter<Character> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Character value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Character value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(String.valueOf(value));
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Character deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Character deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
String value = reader.nextString();
|
||||
if (value.length() != 1) {
|
||||
throw new MalformedDataException("Expected single character, got " + value);
|
||||
|
@ -180,12 +180,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = String.class)
|
||||
public static class StringTypeAdapter extends TypeAdapter<String> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(String value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(String value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> String deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> String deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return reader.nextString();
|
||||
}
|
||||
}
|
||||
|
@ -193,7 +193,7 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = BitSet.class)
|
||||
public static class BitSetTypeAdapter extends TypeAdapter<BitSet> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(BitSet value, Writer writer) throws TEx {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(BitSet value, Writer writer) throws TEx {
|
||||
writer.beginArray();
|
||||
for (int i = 0; i < value.length(); i++) {
|
||||
writer.value(value.get(i) ? 1 : 0);
|
||||
|
@ -202,7 +202,7 @@ public class TypeAdapters {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> BitSet deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> BitSet deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
BitSet bitset = new BitSet();
|
||||
reader.beginArray();
|
||||
int i = 0;
|
||||
|
@ -246,12 +246,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = AtomicInteger.class)
|
||||
public static class AtomicIntegerTypeAdapter extends TypeAdapter<AtomicInteger> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(AtomicInteger value, Writer writer) throws TEx {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(AtomicInteger value, Writer writer) throws TEx {
|
||||
writer.value(value.get());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> AtomicInteger deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> AtomicInteger deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return new AtomicInteger(reader.nextInt());
|
||||
} catch (NumberFormatException e) {
|
||||
|
@ -263,12 +263,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = AtomicBoolean.class)
|
||||
public static class AtomicBooleanTypeAdapter extends TypeAdapter<AtomicBoolean> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(AtomicBoolean value, Writer writer) throws TEx {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(AtomicBoolean value, Writer writer) throws TEx {
|
||||
writer.value(value.get());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> AtomicBoolean deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> AtomicBoolean deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return new AtomicBoolean(reader.nextBoolean());
|
||||
}
|
||||
}
|
||||
|
@ -276,7 +276,7 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = AtomicIntegerArray.class)
|
||||
public static class AtomicIntegerArrayTypeAdapter extends TypeAdapter<AtomicIntegerArray> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(AtomicIntegerArray value, Writer writer) throws TEx {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(AtomicIntegerArray value, Writer writer) throws TEx {
|
||||
writer.beginArray();
|
||||
for (int i = 0; i < value.length(); i++) {
|
||||
writer.value(value.get(i));
|
||||
|
@ -285,7 +285,7 @@ public class TypeAdapters {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> AtomicIntegerArray deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> AtomicIntegerArray deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
if (reader.isLenient() && reader.peek() != Token.BEGIN_ARRAY) {
|
||||
// Coerce
|
||||
return new AtomicIntegerArray(new int[]{reader.nextInt()});
|
||||
|
@ -310,12 +310,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = BigDecimal.class)
|
||||
public static class BigDecimalTypeAdapter extends TypeAdapter<BigDecimal> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(BigDecimal value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(BigDecimal value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> BigDecimal deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> BigDecimal deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
String value = reader.nextString();
|
||||
try {
|
||||
return NumberLimits.parseBigDecimal(value);
|
||||
|
@ -328,12 +328,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = BigInteger.class)
|
||||
public static class BigIntegerTypeAdapter extends TypeAdapter<BigInteger> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(BigInteger value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(BigInteger value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> BigInteger deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> BigInteger deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return NumberLimits.parseBigInteger(reader.nextString());
|
||||
} catch (NumberFormatException e) {
|
||||
|
@ -345,12 +345,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = Number.class)
|
||||
public static class NumberTypeAdapter extends TypeAdapter<Number> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Number value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Number value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Number deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Number deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return reader.nextNumber();
|
||||
}
|
||||
}
|
||||
|
@ -358,12 +358,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = LazilyParsedNumber.class)
|
||||
public static class LazilyParsedNumberTypeAdapter extends TypeAdapter<LazilyParsedNumber> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(LazilyParsedNumber value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(LazilyParsedNumber value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> LazilyParsedNumber deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> LazilyParsedNumber deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
if (reader.peek() == Token.NUMBER) {
|
||||
Number number = reader.nextNumber();
|
||||
if (number instanceof LazilyParsedNumber l) return l;
|
||||
|
@ -377,12 +377,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = StringBuilder.class)
|
||||
public static class StringBuilderTypeAdapter extends TypeAdapter<StringBuilder> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(StringBuilder value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(StringBuilder value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> StringBuilder deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> StringBuilder deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return new StringBuilder(reader.nextString());
|
||||
}
|
||||
}
|
||||
|
@ -390,12 +390,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = StringBuffer.class)
|
||||
public static class StringBufferTypeAdapter extends TypeAdapter<StringBuffer> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(StringBuffer value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(StringBuffer value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> StringBuffer deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> StringBuffer deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return new StringBuffer(reader.nextString());
|
||||
}
|
||||
}
|
||||
|
@ -403,12 +403,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = URL.class)
|
||||
public static class URLTypeAdapter extends TypeAdapter<URL> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(URL value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(URL value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value.toExternalForm());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> URL deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> URL deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
String str = reader.nextString();
|
||||
if (str.equals("null")) return null;
|
||||
|
@ -422,12 +422,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = URI.class)
|
||||
public static class URITypeAdapter extends TypeAdapter<URI> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(URI value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(URI value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> URI deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> URI deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
String str = reader.nextString();
|
||||
if (str.equals("null")) return null;
|
||||
|
@ -441,12 +441,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = InetAddress.class, hierarchical = true)
|
||||
public static class InetAddressTypeAdapter extends TypeAdapter<InetAddress> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(InetAddress value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(InetAddress value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value.getHostAddress());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> InetAddress deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> InetAddress deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return InetAddress.getByName(reader.nextString());
|
||||
} catch (Exception e) {
|
||||
|
@ -458,12 +458,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = UUID.class)
|
||||
public static class UUIDTypeAdapter extends TypeAdapter<UUID> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(UUID value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(UUID value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> UUID deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> UUID deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
try {
|
||||
return UUID.fromString(reader.nextString());
|
||||
} catch (IllegalArgumentException e) {
|
||||
|
@ -475,12 +475,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = Currency.class)
|
||||
public static class CurrencyTypeAdapter extends TypeAdapter<Currency> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Currency value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Currency value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value.getCurrencyCode());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Currency deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Currency deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return Currency.getInstance(reader.nextString());
|
||||
}
|
||||
}
|
||||
|
@ -495,7 +495,7 @@ public class TypeAdapters {
|
|||
private static final String SECOND = "second";
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Calendar value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Calendar value, Writer writer) throws TEx, MalformedDataException {
|
||||
if (value == null) {
|
||||
writer.nullValue();
|
||||
return;
|
||||
|
@ -517,7 +517,7 @@ public class TypeAdapters {
|
|||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Calendar deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Calendar deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
reader.beginObject();
|
||||
int year = 0;
|
||||
int month = 0;
|
||||
|
@ -559,12 +559,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = Locale.class)
|
||||
public static class LocaleTypeAdapter extends TypeAdapter<Locale> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(Locale value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Locale value, Writer writer) throws TEx, MalformedDataException {
|
||||
writer.value(value == null ? null : value.toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> Locale deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Locale deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
String locale = reader.nextString();
|
||||
StringTokenizer tokenizer = new StringTokenizer(locale, "_");
|
||||
String language = null;
|
||||
|
@ -592,12 +592,12 @@ public class TypeAdapters {
|
|||
@SerializerFor(targets = DataElement.class, hierarchical = true)
|
||||
public static class DataElementTypeAdapter extends TypeAdapter<DataElement> {
|
||||
@Override
|
||||
public <TEx extends Throwable, Writer extends SerializeWriter<TEx, Writer>> void serialize(DataElement value, Writer writer) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(DataElement value, Writer writer) throws TEx, MalformedDataException {
|
||||
DataElementSerializer.serialize(value, writer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <TEx extends Throwable, Reader extends SerializeReader<TEx, Reader>> DataElement deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> DataElement deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||
return DataElementSerializer.deserialize(reader);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
package io.gitlab.jfronny.commons.serialize.dsl
|
||||
|
||||
import io.gitlab.jfronny.commons.serialize.SerializeWriter
|
||||
import java.lang.Exception
|
||||
|
||||
class ArrayScope<TEx : Throwable, Writer: SerializeWriter<TEx, Writer>>(val writer: Writer) {
|
||||
class ArrayScope<TEx : Exception, Writer: SerializeWriter<TEx, Writer>>(val writer: Writer) {
|
||||
fun jObject(content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) {
|
||||
writer.beginObject()
|
||||
ObjectScope(writer).content()
|
||||
|
|
|
@ -15,17 +15,17 @@ import kotlin.io.path.writer
|
|||
@Target(AnnotationTarget.CLASS, AnnotationTarget.TYPE)
|
||||
annotation class JsonDsl
|
||||
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> Path.jObject(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) = openJson(transport) { jObject(content) }
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> Path.jArray(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) = openJson(transport) { jArray(content) }
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> IOWriter.jObject(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) = openJson(transport) { jObject(content) }
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> IOWriter.jArray(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) = openJson(transport) { jArray(content) }
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> OutputStream.jObject(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) = openJson(transport) { jObject(content) }
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> OutputStream.jArray(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) = openJson(transport) { jArray(content) }
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> jObjectString(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit): String = StringWriter().use {
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> Path.jObject(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) = openJson(transport) { jObject(content) }
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> Path.jArray(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) = openJson(transport) { jArray(content) }
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> IOWriter.jObject(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) = openJson(transport) { jObject(content) }
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> IOWriter.jArray(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) = openJson(transport) { jArray(content) }
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> OutputStream.jObject(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) = openJson(transport) { jObject(content) }
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> OutputStream.jArray(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) = openJson(transport) { jArray(content) }
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> jObjectString(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit): String = StringWriter().use {
|
||||
it.jObject(transport, content)
|
||||
it.toString()
|
||||
}
|
||||
fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> jArrayString(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit): String = StringWriter().use {
|
||||
fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> jArrayString(transport: Transport<TEx, Reader, Writer>, content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit): String = StringWriter().use {
|
||||
it.jArray(transport, content)
|
||||
it.toString()
|
||||
}
|
||||
|
@ -38,18 +38,18 @@ fun jArrayTree(content: (@JsonDsl ArrayScope<RuntimeException, EmulatedWriter>).
|
|||
it.get()
|
||||
} as DataElement.Array
|
||||
|
||||
fun <TEx : Throwable, Writer : SerializeWriter<TEx, Writer>> Writer.jObject(content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) {
|
||||
fun <TEx : Exception, Writer : SerializeWriter<TEx, Writer>> Writer.jObject(content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) {
|
||||
beginObject()
|
||||
ObjectScope(this).content()
|
||||
endObject()
|
||||
}
|
||||
|
||||
fun <TEx : Throwable, Writer : SerializeWriter<TEx, Writer>> Writer.jArray(content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) {
|
||||
fun <TEx : Exception, Writer : SerializeWriter<TEx, Writer>> Writer.jArray(content: (@JsonDsl ArrayScope<TEx, Writer>).() -> Unit) {
|
||||
beginArray()
|
||||
ArrayScope(this).content()
|
||||
endArray()
|
||||
}
|
||||
|
||||
private fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> Path.openJson(transport: Transport<TEx, Reader, Writer>, write: Writer.() -> Unit) = writer().use { it.openJson(transport, write) }
|
||||
private fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> IOWriter.openJson(transport: Transport<TEx, Reader, Writer>, write: Writer.() -> Unit) = transport.createWriter(this).write()
|
||||
private fun <TEx : Throwable, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> OutputStream.openJson(transport: Transport<TEx, Reader, Writer>, write: Writer.() -> Unit) = writer().use { it.openJson(transport, write) }
|
||||
private fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> Path.openJson(transport: Transport<TEx, Reader, Writer>, write: Writer.() -> Unit) = writer().use { it.openJson(transport, write) }
|
||||
private fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> IOWriter.openJson(transport: Transport<TEx, Reader, Writer>, write: Writer.() -> Unit) = transport.createWriter(this).write()
|
||||
private fun <TEx : Exception, Reader : SerializeReader<TEx, Reader>, Writer : SerializeWriter<TEx, Writer>> OutputStream.openJson(transport: Transport<TEx, Reader, Writer>, write: Writer.() -> Unit) = writer().use { it.openJson(transport, write) }
|
||||
|
|
|
@ -2,7 +2,7 @@ package io.gitlab.jfronny.commons.serialize.dsl
|
|||
|
||||
import io.gitlab.jfronny.commons.serialize.SerializeWriter
|
||||
|
||||
class ObjectScope<TEx : Throwable, Writer : SerializeWriter<TEx, Writer>>(val writer: Writer) {
|
||||
class ObjectScope<TEx : Exception, Writer : SerializeWriter<TEx, Writer>>(val writer: Writer) {
|
||||
fun jObject(name: String, content: (@JsonDsl ObjectScope<TEx, Writer>).() -> Unit) {
|
||||
writer.name(name)
|
||||
writer.beginObject()
|
||||
|
|
|
@ -13,13 +13,7 @@ import java.util.*;
|
|||
*/
|
||||
public class LinkedTreeMap<K, V> extends AbstractMap<K, V> implements Serializable {
|
||||
@SuppressWarnings({"unchecked", "rawtypes"}) // to avoid Comparable<Comparable<Comparable<...>>>
|
||||
private static final Comparator<Comparable> NATURAL_ORDER =
|
||||
new Comparator<Comparable>() {
|
||||
@Override
|
||||
public int compare(Comparable a, Comparable b) {
|
||||
return a.compareTo(b);
|
||||
}
|
||||
};
|
||||
private static final Comparator<Comparable> NATURAL_ORDER = Comparable::compareTo;
|
||||
|
||||
private final Comparator<? super K> comparator;
|
||||
private final boolean allowNullValues;
|
||||
|
|
Loading…
Reference in New Issue