Class DateTypeAdapter

java.lang.Object
com.google.gson.TypeAdapter<Date>
com.google.gson.internal.bind.DateTypeAdapter

public final class DateTypeAdapter extends TypeAdapter<Date>
Adapter for Date. Although this class appears stateless, it is not. DateFormat captures its time zone and locale when it is created, which gives this class state. DateFormat isn't thread safe either, so this class has to synchronize its read and write methods.
  • Field Details

    • FACTORY

      public static final TypeAdapterFactory FACTORY
    • dateFormats

      private final List<DateFormat> dateFormats
      List of 1 or more different date formats used for de-serialization attempts. The first of them (default US format) is used for serialization as well.
  • Constructor Details

    • DateTypeAdapter

      public DateTypeAdapter()
  • Method Details

    • read

      public Date read(JsonReader in) throws IOException
      Description copied from class: TypeAdapter
      Reads one JSON value (an array, object, string, number, boolean or null) and converts it to a Java object. Returns the converted object.
      Specified by:
      read in class TypeAdapter<Date>
      Returns:
      the converted Java object. May be null.
      Throws:
      IOException
    • deserializeToDate

      private Date deserializeToDate(String json)
    • write

      public void write(JsonWriter out, Date value) throws IOException
      Description copied from class: TypeAdapter
      Writes one JSON value (an array, object, string, number, boolean or null) for value.
      Specified by:
      write in class TypeAdapter<Date>
      Parameters:
      value - the Java object to write. May be null.
      Throws:
      IOException