@SuppressWarnings("unchecked") private void addTypeAdaptersForDate(String datePattern, int dateStyle, int timeStyle, List<TypeAdapterFactory> factories) { DefaultDateTypeAdapter dateTypeAdapter; TypeAdapter<Timestamp> timestampTypeAdapter; TypeAdapter<java.sql.Date> javaSqlDateTypeAdapter; if (datePattern != null && !"".equals(datePattern.trim())) { dateTypeAdapter = new DefaultDateTypeAdapter(Date.class, datePattern); timestampTypeAdapter = (TypeAdapter) new DefaultDateTypeAdapter(Timestamp.class, datePattern); javaSqlDateTypeAdapter = (TypeAdapter) new DefaultDateTypeAdapter(java.sql.Date.class, datePattern); } else if (dateStyle != DateFormat.DEFAULT && timeStyle != DateFormat.DEFAULT) { dateTypeAdapter = new DefaultDateTypeAdapter(Date.class, dateStyle, timeStyle); timestampTypeAdapter = (TypeAdapter) new DefaultDateTypeAdapter(Timestamp.class, dateStyle, timeStyle); javaSqlDateTypeAdapter = (TypeAdapter) new DefaultDateTypeAdapter(java.sql.Date.class, dateStyle, timeStyle); } else { return; } factories.add(TypeAdapters.newFactory(Date.class, dateTypeAdapter)); factories.add(TypeAdapters.newFactory(Timestamp.class, timestampTypeAdapter)); factories.add(TypeAdapters.newFactory(java.sql.Date.class, javaSqlDateTypeAdapter)); } }
factories.add(TypeAdapters.SHORT_FACTORY); TypeAdapter<Number> longAdapter = longAdapter(longSerializationPolicy); factories.add(TypeAdapters.newFactory(long.class, Long.class, longAdapter)); factories.add(TypeAdapters.newFactory(double.class, Double.class, doubleAdapter(serializeSpecialFloatingPointValues))); factories.add(TypeAdapters.newFactory(float.class, Float.class, floatAdapter(serializeSpecialFloatingPointValues))); factories.add(TypeAdapters.NUMBER_FACTORY); factories.add(TypeAdapters.ATOMIC_INTEGER_FACTORY); factories.add(TypeAdapters.ATOMIC_BOOLEAN_FACTORY); factories.add(TypeAdapters.newFactory(AtomicLong.class, atomicLongAdapter(longAdapter))); factories.add(TypeAdapters.newFactory(AtomicLongArray.class, atomicLongArrayAdapter(longAdapter))); factories.add(TypeAdapters.ATOMIC_INTEGER_ARRAY_FACTORY); factories.add(TypeAdapters.CHARACTER_FACTORY); factories.add(TypeAdapters.STRING_BUILDER_FACTORY); factories.add(TypeAdapters.STRING_BUFFER_FACTORY); factories.add(TypeAdapters.newFactory(BigDecimal.class, TypeAdapters.BIG_DECIMAL)); factories.add(TypeAdapters.newFactory(BigInteger.class, TypeAdapters.BIG_INTEGER)); factories.add(TypeAdapters.URL_FACTORY); factories.add(TypeAdapters.URI_FACTORY);
factories.add(TypeAdapters.newFactory(TypeToken.get(type), (TypeAdapter)typeAdapter));
public <T> Builder typeAdapter(TypeToken<T> type, TypeAdapter<T> typeAdapter) { factories.add(TypeAdapters.newFactory(type, typeAdapter)); return this; }
public <T> Builder typeAdapter(final Class<T> type, final TypeAdapter<T> typeAdapter) { factories.add(TypeAdapters.newFactory(type, typeAdapter)); return this; }
@Provides @ForInstant TypeAdapterFactory provideTypeAdapterFactoryForInstant( InstantTypeAdapter typeAdapter) { return TypeAdapters.newFactory(Instant.class, typeAdapter); }
@Provides @ForInstant TypeAdapterFactory provideTypeAdapterFactoryForInstant( InstantTypeAdapter typeAdapter) { return TypeAdapters.newFactory(Instant.class, typeAdapter); }
default TypeAdapterFactory createStringTypeAdapterFactory() { return TypeAdapters.newFactory(String.class, createTypeAdapterString()); }
default TypeAdapterFactory createIntegerTypeAdapterFactory() { return TypeAdapters.newFactory(int.class, Integer.class, createTypeAdapterInteger()); }
default TypeAdapterFactory createBooleanTypeAdapterFactory() { return TypeAdapters.newFactory(boolean.class, Boolean.class, createTypeAdapterBoolean()); }
default TypeAdapterFactory createBigDecimalTypeAdapterFactory() { return TypeAdapters.newFactory(BigDecimal.class, createTypeAdapterBigDecimal()); }
default TypeAdapterFactory createLongTypeAdapterFactory() { return TypeAdapters.newFactory(long.class, Long.class, createTypeAdapterLong()); }
default TypeAdapterFactory createBigDecimalTypeAdapterFactory() { return TypeAdapters.newFactory(BigDecimal.class, createTypeAdapterBigDecimal()); }
default TypeAdapterFactory createIntegerTypeAdapterFactory() { return TypeAdapters.newFactory(int.class, Integer.class, createTypeAdapterInteger()); }
default TypeAdapterFactory createBooleanTypeAdapterFactory() { return TypeAdapters.newFactory(boolean.class, Boolean.class, createTypeAdapterBoolean()); }
default TypeAdapterFactory createLongTypeAdapterFactory() { return TypeAdapters.newFactory(long.class, Long.class, createTypeAdapterLong()); }
default TypeAdapterFactory createStringTypeAdapterFactory() { return TypeAdapters.newFactory(String.class, createTypeAdapterString()); }
factories.add(TypeAdapters.newFactory(TypeToken.get(type), (TypeAdapter)typeAdapter));
factories.add(TypeAdapters.newFactory(TypeToken.get(type), (TypeAdapter)typeAdapter));
factories.add(TypeAdapters.newFactory(TypeToken.get(type), (TypeAdapter)typeAdapter));