public class JanksonValueSerializer extends Object implements ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>
ValueSerializer for Jankson.| Constructor and Description |
|---|
JanksonValueSerializer(boolean minify) |
JanksonValueSerializer(boolean minify,
blue.endless.jankson.Jankson jankson) |
| Modifier and Type | Method and Description |
|---|---|
void |
addElement(String name,
blue.endless.jankson.JsonElement elem,
blue.endless.jankson.JsonObject target,
String comment)
Aggregates a serialized value, associated with the given key, into the target.
|
void |
addSubElement(String name,
blue.endless.jankson.JsonObject elem,
blue.endless.jankson.JsonObject target,
String comment)
Aggregates an existing target, associated with the given key, into the target as a sub-target.
|
boolean |
deserializeBoolean(blue.endless.jankson.JsonElement elem,
BooleanSerializableType type)
Converts the serialized form to a boolean.
|
String |
deserializeEnum(blue.endless.jankson.JsonElement elem,
EnumSerializableType type)
Converts the serialized form to a enumerated value.
|
<E> List<E> |
deserializeList(blue.endless.jankson.JsonElement elem,
ListSerializableType<E> type)
Converts the serialized form to a list of values.
|
<V> Map<String,V> |
deserializeMap(blue.endless.jankson.JsonElement elem,
MapSerializableType<V> type)
Converts the serialized form to a map.
|
BigDecimal |
deserializeNumber(blue.endless.jankson.JsonElement elem,
DecimalSerializableType type)
Converts the serialized form to a number.
|
Map<String,Object> |
deserializeRecord(blue.endless.jankson.JsonElement elem,
RecordSerializableType type)
Converts the serialized form to a record.
|
String |
deserializeString(blue.endless.jankson.JsonElement elem,
StringSerializableType type)
Converts the serialized form to a string.
|
Iterator<Map.Entry<String,blue.endless.jankson.JsonElement>> |
elements(blue.endless.jankson.JsonObject target)
Extracts an
Iterator over all aggregated key-value pairs in the given target. |
blue.endless.jankson.JsonObject |
newTarget()
Creates a new, empty aggregate target.
|
blue.endless.jankson.JsonObject |
readTarget(InputStream in)
Reads an aggregate target from the given input stream.
|
blue.endless.jankson.JsonElement |
serializeBoolean(boolean value,
BooleanSerializableType type)
Converts a boolean into the serialized form.
|
blue.endless.jankson.JsonElement |
serializeEnum(String value,
EnumSerializableType type)
Converts a enumerated string into the serialized form.
|
<E> blue.endless.jankson.JsonElement |
serializeList(List<E> value,
ListSerializableType<E> type)
Converts a list into the serialized form.
|
<V> blue.endless.jankson.JsonElement |
serializeMap(Map<String,V> value,
MapSerializableType<V> type)
Converts a map into the serialized form.
|
blue.endless.jankson.JsonElement |
serializeNumber(BigDecimal value,
DecimalSerializableType type)
Converts a number into the serialized form.
|
blue.endless.jankson.JsonElement |
serializeRecord(Map<String,Object> value,
RecordSerializableType type)
Converts a record into the serialized form.
|
blue.endless.jankson.JsonElement |
serializeString(String value,
StringSerializableType type)
Converts a string into the serialized form.
|
Iterator<Map.Entry<String,blue.endless.jankson.JsonElement>> |
subElements(blue.endless.jankson.JsonElement elem)
Extracts an
Iterator over all aggregated key-value pairs in the given sub-target element. |
void |
writeTarget(blue.endless.jankson.JsonObject target,
OutputStream out)
Writes a aggregate target to the given output stream.
|
public JanksonValueSerializer(boolean minify)
public JanksonValueSerializer(boolean minify,
blue.endless.jankson.Jankson jankson)
public blue.endless.jankson.JsonElement serializeBoolean(boolean value,
BooleanSerializableType type)
ValueSerializerserializeBoolean in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>value - The boolean value.type - The type of the boolean value.public boolean deserializeBoolean(blue.endless.jankson.JsonElement elem,
BooleanSerializableType type)
throws ValueDeserializationException
ValueSerializerdeserializeBoolean in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized form.type - The type of the boolean value.ValueDeserializationException - If the serialized form cannot be converted into an object of
the correct platform type.public blue.endless.jankson.JsonElement serializeNumber(BigDecimal value, DecimalSerializableType type)
ValueSerializerserializeNumber in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>value - The numeric value.type - The type of the numeric value.public BigDecimal deserializeNumber(blue.endless.jankson.JsonElement elem, DecimalSerializableType type) throws ValueDeserializationException
ValueSerializerdeserializeNumber in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized form.type - The type of the numeric value.ValueDeserializationException - If the serialized form cannot be converted into an object of
the correct platform type.public blue.endless.jankson.JsonElement serializeString(String value, StringSerializableType type)
ValueSerializerserializeString in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>value - The string value.type - The type of the string value.public String deserializeString(blue.endless.jankson.JsonElement elem, StringSerializableType type) throws ValueDeserializationException
ValueSerializerdeserializeString in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized form.type - The type of the string value.ValueDeserializationException - If the serialized form cannot be converted into an object of
the correct platform type.public blue.endless.jankson.JsonElement serializeEnum(String value, EnumSerializableType type)
ValueSerializerserializeEnum in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>value - The enum value.type - The type of the enum value.public String deserializeEnum(blue.endless.jankson.JsonElement elem, EnumSerializableType type) throws ValueDeserializationException
ValueSerializerdeserializeEnum in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized form.type - The type of the enumerated value.ValueDeserializationException - If the serialized form cannot be converted into an object of
the correct platform type.public <E> blue.endless.jankson.JsonElement serializeList(List<E> value, ListSerializableType<E> type)
ValueSerializerserializeList in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>value - The list value.type - The type of the list value.public <E> List<E> deserializeList(blue.endless.jankson.JsonElement elem, ListSerializableType<E> type) throws ValueDeserializationException
ValueSerializerdeserializeList in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized form.type - The type of the list value.ValueDeserializationException - If the serialized form cannot be converted into an object of
the correct platform type.public <V> blue.endless.jankson.JsonElement serializeMap(Map<String,V> value, MapSerializableType<V> type)
ValueSerializerserializeMap in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>value - The map value.type - The type of the map value.public <V> Map<String,V> deserializeMap(blue.endless.jankson.JsonElement elem, MapSerializableType<V> type) throws ValueDeserializationException
ValueSerializerdeserializeMap in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized form.type - The type of the map value.ValueDeserializationException - If the serialized form cannot be converted into an object of
the correct platform type.public blue.endless.jankson.JsonElement serializeRecord(Map<String,Object> value, RecordSerializableType type)
ValueSerializerserializeRecord in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>value - The record value.type - The type of the record value.public Map<String,Object> deserializeRecord(blue.endless.jankson.JsonElement elem, RecordSerializableType type) throws ValueDeserializationException
ValueSerializerdeserializeRecord in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized form.type - The type of the record value.ValueDeserializationException - If the serialized form cannot be converted into an object of
the correct platform type.public void addElement(String name, blue.endless.jankson.JsonElement elem, blue.endless.jankson.JsonObject target, @Nullable String comment)
ValueSerializeraddElement in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>name - The key with which to associate the value.elem - The serialized value.target - The target aggregate.comment - an optional comment associated with the element.public void addSubElement(String name, blue.endless.jankson.JsonObject elem, blue.endless.jankson.JsonObject target, @Nullable String comment)
ValueSerializeraddSubElement in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>name - The key with which to associate the sub-target.elem - The sub-target.target - The target aggregate.comment - an optional comment associated with the elementpublic Iterator<Map.Entry<String,blue.endless.jankson.JsonElement>> elements(blue.endless.jankson.JsonObject target)
ValueSerializerIterator over all aggregated key-value pairs in the given target.elements in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>target - The target.public Iterator<Map.Entry<String,blue.endless.jankson.JsonElement>> subElements(blue.endless.jankson.JsonElement elem) throws ValueDeserializationException
ValueSerializerIterator over all aggregated key-value pairs in the given sub-target element.subElements in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>elem - The serialized sub-target element.ValueDeserializationException - If elem does not represent a sub-target.public void writeTarget(blue.endless.jankson.JsonObject target,
OutputStream out)
throws IOException
ValueSerializerwriteTarget in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>target - The target.out - The output stream.IOException - If an IO error occurs while writing to the stream.public blue.endless.jankson.JsonObject readTarget(InputStream in) throws ValueDeserializationException, IOException
ValueSerializerreadTarget in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>in - The input stream.ValueDeserializationException - If a target cannot be read from the stream.IOException - If an IO error occurs while reading from the stream.public blue.endless.jankson.JsonObject newTarget()
ValueSerializernewTarget in interface ValueSerializer<blue.endless.jankson.JsonElement,blue.endless.jankson.JsonObject>