下面列出了com.google.gson.internal.bind.util.ISO8601Utils#format ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Nullable
public static List<Tags> getTagsUpdate(ApiService api, Date updateAtStart, Date updateAtEnd) {
List<Tags> list = new ArrayList<>();
int pageSize = 100;
String range = ISO8601Utils.format(updateAtStart) + "," + ISO8601Utils.format(updateAtEnd);
try {
Response<List<Tags>> response = api.getTags(range, pageSize, Pagination.getPage(list, pageSize)).execute();
if (!Tools.apiIsSuccessfulNoThrow(response))
return null;
int total = Integer.decode(response.headers().get("X-Total"));
list.addAll(response.body());
while (list.size() < total) {
response = api.getTags(range, pageSize, Pagination.getPage(list, pageSize)).execute();
if (!Tools.apiIsSuccessfulNoThrow(response))
return null;
list.addAll(response.body());
}
} catch (IOException e) {
e.printStackTrace();
}
return list;
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
@Override
public void write(JsonWriter out, Date date) throws IOException {
if (date == null) {
out.nullValue();
} else {
String value;
if (dateFormat != null) {
value = dateFormat.format(date);
} else {
value = ISO8601Utils.format(date, true);
}
out.value(value);
}
}
public static String jsonDate(Date value) {
return value == null ? null : ISO8601Utils.format(value, false, UTC);
}
public String updatedOn() {
return ISO8601Utils.format(updatedOnTimeStamp(), false, UTC);
}
static public Gson getGson() {
class DateDeserializer implements JsonDeserializer<Date> {
private final String TAG = DateDeserializer.class.getSimpleName();
@Override
public java.util.Date deserialize(JsonElement element, Type arg1, JsonDeserializationContext arg2) throws JsonParseException {
String date = element.getAsString();
Date returnDate = null;
try {
returnDate = ISO8601Utils.parse(date, new ParsePosition(0));
} catch (ParseException | IllegalArgumentException e) {
Log.e(TAG, "Failed to parse dateString: (" + date + "), due to:", e);
}
return returnDate;
}
}
class DateSerializer implements JsonSerializer<Date> {
@Override
public JsonElement serialize(java.util.Date src, Type typeOfSrc, JsonSerializationContext context) {
String dateFormatAsString = ISO8601Utils.format(src, false, TimeZone.getTimeZone("GMT"));
return new JsonPrimitive(dateFormatAsString);
}
}
return new GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
.registerTypeAdapter(Slots.class, new Slots.SlotsDeserializer())
.registerTypeAdapter(Slots.class, new Slots.SlotsSerializer())
.registerTypeAdapter(java.util.Date.class, new DateDeserializer())
.registerTypeAdapter(java.util.Date.class, new DateSerializer())
.registerTypeAdapter(UsersLTE.class, new UsersLTE.UserLTEDeserializer())
.registerTypeAdapter(Messages.UserVotes.class, new Messages.UserVotes.UserVotesDeserializer())
.registerTypeAdapter(UsersLTE.getListType(), new UsersLTE.ListUserLTEDeserializer())
// .registerTypeAdapter(ScaleTeams.class, new ScaleTeams.ScaleTeamsDeserializer())
.create();
}
/**
* @return The current date and time in a ISO 8601 compliant format.
*/
public static String getCurrentTimeStamp(){
return ISO8601Utils.format(new Date(), true); // Find todays date
}
/**
* Formats date time to ISO 8601 string.
*
* @param dateTime date time to format
* @return formatted string
*/
public static String format(DateTime dateTime) {
Calendar calendar = checkNotNull(dateTime, "dateTime").getCalendar();
return ISO8601Utils.format(calendar.getTime(), true, calendar.getTimeZone());
}