Parcourir la source

add ISO8601 formatting utility methods

tags/2.0.1
Jonathan Cobb il y a 5 ans
Parent
révision
16e037fa76
1 fichiers modifiés avec 6 ajouts et 5 suppressions
  1. +6
    -5
      src/main/java/org/cobbzilla/util/time/TimeUtil.java

+ 6
- 5
src/main/java/org/cobbzilla/util/time/TimeUtil.java Voir le fichier

@@ -4,10 +4,7 @@ import org.cobbzilla.util.string.StringUtil;
import org.joda.time.DateTime;
import org.joda.time.DateTimeZone;
import org.joda.time.DurationFieldType;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
import org.joda.time.format.PeriodFormatter;
import org.joda.time.format.PeriodFormatterBuilder;
import org.joda.time.format.*;

import static java.util.concurrent.TimeUnit.*;
import static org.apache.commons.lang3.LocaleUtils.toLocale;
@@ -37,6 +34,7 @@ public class TimeUtil {
public static final DateTimeFormatter DATE_FORMAT_HYPHEN_MMDDYYYY = DateTimeFormat.forPattern("MM-dd-yyyy");
public static final DateTimeFormatter DATE_FORMAT_HYPHEN_MMMDDYYYY = DateTimeFormat.forPattern("MMM-dd-yyyy");
public static final DateTimeFormatter DATE_FORMAT_EEE_DD_MMM_YYYY_HH_MM_SS_ZZZ = DateTimeFormat.forPattern("EEE, dd MMM yyyy HH:mm:ss zzz");
public static final DateTimeFormatter DATE_FORMAT_ISO_8601 = ISODateTimeFormat.dateTimeParser();
public static final DateTimeFormatter DATE_FORMAT_IF_MODIFIED_SINCE = DATE_FORMAT_EEE_DD_MMM_YYYY_HH_MM_SS_ZZZ;
public static final DateTimeFormatter DATE_FORMAT_LAST_MODIFIED = DATE_FORMAT_IF_MODIFIED_SINCE;

@@ -66,7 +64,7 @@ public class TimeUtil {
return empty(time) ? null : formatter.withLocale(toLocale(locale)).parseDateTime(time).getMillis();
}

public static Object parse(String val) {
public static Long parse(String val) {
for (DateTimeFormatter f : DATE_TIME_FORMATS) {
try {
return TimeUtil.parse(val, f);
@@ -77,6 +75,9 @@ public class TimeUtil {
return null;
}

public static Long parseISO8601(String val) { return DATE_FORMAT_ISO_8601.parseMillis(val); }
public static String formatISO8601(long val) { return DATE_FORMAT_ISO_8601.print(val); }

public static Long parseWithLocale(String val, String locale) {
for (DateTimeFormatter f : DATE_TIME_FORMATS) {
try {


Chargement…
Annuler
Enregistrer