EnumJsonAdapter

class EnumJsonAdapter<T : Enum<T>?> : JsonAdapter<T>

A JsonAdapter for enums that allows having a fallback enum value when a deserialized string does not match any enum value. To use, add this as an adapter for your enum type on your Moshi.Builder:


Moshi moshi = new Moshi.Builder()
    .add(CurrencyCode.class, EnumJsonAdapter.create(CurrencyCode.class)
        .withUnknownFallback(CurrencyCode.USD))
    .build();

Functions

Link copied to clipboard
open fun <T : Enum<T>?> create(enumType: Class<T>): EnumJsonAdapter<T>
Link copied to clipboard
fun failOnUnknown(): JsonAdapter<T>
Link copied to clipboard
open fun fromJson(reader: JsonReader): T
Link copied to clipboard
fun fromJsonValue(value: Any): T
Link copied to clipboard
open fun indent(indent: String): JsonAdapter<T>
Link copied to clipboard
fun lenient(): JsonAdapter<T>
Link copied to clipboard
fun nonNull(): JsonAdapter<T>
Link copied to clipboard
fun nullSafe(): JsonAdapter<T>
Link copied to clipboard
fun serializeNulls(): JsonAdapter<T>
Link copied to clipboard
fun toJson(value: T): String
open fun toJson(writer: JsonWriter, value: T)
Link copied to clipboard
fun toJsonValue(value: T): Any
Link copied to clipboard
open fun toString(): String
Link copied to clipboard
open fun withUnknownFallback(@Nullable fallbackValue: T): EnumJsonAdapter<T>
Create a new adapter for this enum with a fallback value to use when the JSON string does not match any of the enum's constants.