List of usage examples for org.joda.time.format ISODateTimeFormat dateHourMinuteSecond
public static DateTimeFormatter dateHourMinuteSecond()
From source file:eu.trentorise.opendata.jackan.ckan.CkanClient.java
License:Apache License
public static DateTime parseRevisionTimestamp(String revisionTimestamp) { checkNotEmpty(revisionTimestamp, "invalid ckan revision timestamp"); return DateTime.parse(revisionTimestamp, ISODateTimeFormat.dateHourMinuteSecond()); }
From source file:org.codelibs.elasticsearch.common.joda.Joda.java
License:Apache License
/** * Parses a joda based pattern, including some named ones (similar to the built in Joda ISO ones). */// w ww .j a v a 2s .c om public static FormatDateTimeFormatter forPattern(String input, Locale locale) { if (Strings.hasLength(input)) { input = input.trim(); } if (input == null || input.length() == 0) { throw new IllegalArgumentException("No date pattern provided"); } DateTimeFormatter formatter; if ("basicDate".equals(input) || "basic_date".equals(input)) { formatter = ISODateTimeFormat.basicDate(); } else if ("basicDateTime".equals(input) || "basic_date_time".equals(input)) { formatter = ISODateTimeFormat.basicDateTime(); } else if ("basicDateTimeNoMillis".equals(input) || "basic_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicDateTimeNoMillis(); } else if ("basicOrdinalDate".equals(input) || "basic_ordinal_date".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDate(); } else if ("basicOrdinalDateTime".equals(input) || "basic_ordinal_date_time".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDateTime(); } else if ("basicOrdinalDateTimeNoMillis".equals(input) || "basic_ordinal_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDateTimeNoMillis(); } else if ("basicTime".equals(input) || "basic_time".equals(input)) { formatter = ISODateTimeFormat.basicTime(); } else if ("basicTimeNoMillis".equals(input) || "basic_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicTimeNoMillis(); } else if ("basicTTime".equals(input) || "basic_t_Time".equals(input)) { formatter = ISODateTimeFormat.basicTTime(); } else if ("basicTTimeNoMillis".equals(input) || "basic_t_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicTTimeNoMillis(); } else if ("basicWeekDate".equals(input) || "basic_week_date".equals(input)) { formatter = ISODateTimeFormat.basicWeekDate(); } else if ("basicWeekDateTime".equals(input) || "basic_week_date_time".equals(input)) { formatter = ISODateTimeFormat.basicWeekDateTime(); } else if ("basicWeekDateTimeNoMillis".equals(input) || "basic_week_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicWeekDateTimeNoMillis(); } else if ("date".equals(input)) { formatter = ISODateTimeFormat.date(); } else if ("dateHour".equals(input) || "date_hour".equals(input)) { formatter = ISODateTimeFormat.dateHour(); } else if ("dateHourMinute".equals(input) || "date_hour_minute".equals(input)) { formatter = ISODateTimeFormat.dateHourMinute(); } else if ("dateHourMinuteSecond".equals(input) || "date_hour_minute_second".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecond(); } else if ("dateHourMinuteSecondFraction".equals(input) || "date_hour_minute_second_fraction".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecondFraction(); } else if ("dateHourMinuteSecondMillis".equals(input) || "date_hour_minute_second_millis".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecondMillis(); } else if ("dateOptionalTime".equals(input) || "date_optional_time".equals(input)) { // in this case, we have a separate parser and printer since the dataOptionalTimeParser can't print // this sucks we should use the root local by default and not be dependent on the node return new FormatDateTimeFormatter(input, ISODateTimeFormat.dateOptionalTimeParser().withZone(DateTimeZone.UTC), ISODateTimeFormat.dateTime().withZone(DateTimeZone.UTC), locale); } else if ("dateTime".equals(input) || "date_time".equals(input)) { formatter = ISODateTimeFormat.dateTime(); } else if ("dateTimeNoMillis".equals(input) || "date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.dateTimeNoMillis(); } else if ("hour".equals(input)) { formatter = ISODateTimeFormat.hour(); } else if ("hourMinute".equals(input) || "hour_minute".equals(input)) { formatter = ISODateTimeFormat.hourMinute(); } else if ("hourMinuteSecond".equals(input) || "hour_minute_second".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecond(); } else if ("hourMinuteSecondFraction".equals(input) || "hour_minute_second_fraction".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecondFraction(); } else if ("hourMinuteSecondMillis".equals(input) || "hour_minute_second_millis".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecondMillis(); } else if ("ordinalDate".equals(input) || "ordinal_date".equals(input)) { formatter = ISODateTimeFormat.ordinalDate(); } else if ("ordinalDateTime".equals(input) || "ordinal_date_time".equals(input)) { formatter = ISODateTimeFormat.ordinalDateTime(); } else if ("ordinalDateTimeNoMillis".equals(input) || "ordinal_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.ordinalDateTimeNoMillis(); } else if ("time".equals(input)) { formatter = ISODateTimeFormat.time(); } else if ("timeNoMillis".equals(input) || "time_no_millis".equals(input)) { formatter = ISODateTimeFormat.timeNoMillis(); } else if ("tTime".equals(input) || "t_time".equals(input)) { formatter = ISODateTimeFormat.tTime(); } else if ("tTimeNoMillis".equals(input) || "t_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.tTimeNoMillis(); } else if ("weekDate".equals(input) || "week_date".equals(input)) { formatter = ISODateTimeFormat.weekDate(); } else if ("weekDateTime".equals(input) || "week_date_time".equals(input)) { formatter = ISODateTimeFormat.weekDateTime(); } else if ("weekDateTimeNoMillis".equals(input) || "week_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.weekDateTimeNoMillis(); } else if ("weekyear".equals(input) || "week_year".equals(input)) { formatter = ISODateTimeFormat.weekyear(); } else if ("weekyearWeek".equals(input) || "weekyear_week".equals(input)) { formatter = ISODateTimeFormat.weekyearWeek(); } else if ("weekyearWeekDay".equals(input) || "weekyear_week_day".equals(input)) { formatter = ISODateTimeFormat.weekyearWeekDay(); } else if ("year".equals(input)) { formatter = ISODateTimeFormat.year(); } else if ("yearMonth".equals(input) || "year_month".equals(input)) { formatter = ISODateTimeFormat.yearMonth(); } else if ("yearMonthDay".equals(input) || "year_month_day".equals(input)) { formatter = ISODateTimeFormat.yearMonthDay(); } else if ("epoch_second".equals(input)) { formatter = new DateTimeFormatterBuilder() .append(new EpochTimePrinter(false), new EpochTimeParser(false)).toFormatter(); } else if ("epoch_millis".equals(input)) { formatter = new DateTimeFormatterBuilder().append(new EpochTimePrinter(true), new EpochTimeParser(true)) .toFormatter(); // strict date formats here, must be at least 4 digits for year and two for months and two for day } else if ("strictBasicWeekDate".equals(input) || "strict_basic_week_date".equals(input)) { formatter = StrictISODateTimeFormat.basicWeekDate(); } else if ("strictBasicWeekDateTime".equals(input) || "strict_basic_week_date_time".equals(input)) { formatter = StrictISODateTimeFormat.basicWeekDateTime(); } else if ("strictBasicWeekDateTimeNoMillis".equals(input) || "strict_basic_week_date_time_no_millis".equals(input)) { formatter = StrictISODateTimeFormat.basicWeekDateTimeNoMillis(); } else if ("strictDate".equals(input) || "strict_date".equals(input)) { formatter = StrictISODateTimeFormat.date(); } else if ("strictDateHour".equals(input) || "strict_date_hour".equals(input)) { formatter = StrictISODateTimeFormat.dateHour(); } else if ("strictDateHourMinute".equals(input) || "strict_date_hour_minute".equals(input)) { formatter = StrictISODateTimeFormat.dateHourMinute(); } else if ("strictDateHourMinuteSecond".equals(input) || "strict_date_hour_minute_second".equals(input)) { formatter = StrictISODateTimeFormat.dateHourMinuteSecond(); } else if ("strictDateHourMinuteSecondFraction".equals(input) || "strict_date_hour_minute_second_fraction".equals(input)) { formatter = StrictISODateTimeFormat.dateHourMinuteSecondFraction(); } else if ("strictDateHourMinuteSecondMillis".equals(input) || "strict_date_hour_minute_second_millis".equals(input)) { formatter = StrictISODateTimeFormat.dateHourMinuteSecondMillis(); } else if ("strictDateOptionalTime".equals(input) || "strict_date_optional_time".equals(input)) { // in this case, we have a separate parser and printer since the dataOptionalTimeParser can't print // this sucks we should use the root local by default and not be dependent on the node return new FormatDateTimeFormatter(input, StrictISODateTimeFormat.dateOptionalTimeParser().withZone(DateTimeZone.UTC), StrictISODateTimeFormat.dateTime().withZone(DateTimeZone.UTC), locale); } else if ("strictDateTime".equals(input) || "strict_date_time".equals(input)) { formatter = StrictISODateTimeFormat.dateTime(); } else if ("strictDateTimeNoMillis".equals(input) || "strict_date_time_no_millis".equals(input)) { formatter = StrictISODateTimeFormat.dateTimeNoMillis(); } else if ("strictHour".equals(input) || "strict_hour".equals(input)) { formatter = StrictISODateTimeFormat.hour(); } else if ("strictHourMinute".equals(input) || "strict_hour_minute".equals(input)) { formatter = StrictISODateTimeFormat.hourMinute(); } else if ("strictHourMinuteSecond".equals(input) || "strict_hour_minute_second".equals(input)) { formatter = StrictISODateTimeFormat.hourMinuteSecond(); } else if ("strictHourMinuteSecondFraction".equals(input) || "strict_hour_minute_second_fraction".equals(input)) { formatter = StrictISODateTimeFormat.hourMinuteSecondFraction(); } else if ("strictHourMinuteSecondMillis".equals(input) || "strict_hour_minute_second_millis".equals(input)) { formatter = StrictISODateTimeFormat.hourMinuteSecondMillis(); } else if ("strictOrdinalDate".equals(input) || "strict_ordinal_date".equals(input)) { formatter = StrictISODateTimeFormat.ordinalDate(); } else if ("strictOrdinalDateTime".equals(input) || "strict_ordinal_date_time".equals(input)) { formatter = StrictISODateTimeFormat.ordinalDateTime(); } else if ("strictOrdinalDateTimeNoMillis".equals(input) || "strict_ordinal_date_time_no_millis".equals(input)) { formatter = StrictISODateTimeFormat.ordinalDateTimeNoMillis(); } else if ("strictTime".equals(input) || "strict_time".equals(input)) { formatter = StrictISODateTimeFormat.time(); } else if ("strictTimeNoMillis".equals(input) || "strict_time_no_millis".equals(input)) { formatter = StrictISODateTimeFormat.timeNoMillis(); } else if ("strictTTime".equals(input) || "strict_t_time".equals(input)) { formatter = StrictISODateTimeFormat.tTime(); } else if ("strictTTimeNoMillis".equals(input) || "strict_t_time_no_millis".equals(input)) { formatter = StrictISODateTimeFormat.tTimeNoMillis(); } else if ("strictWeekDate".equals(input) || "strict_week_date".equals(input)) { formatter = StrictISODateTimeFormat.weekDate(); } else if ("strictWeekDateTime".equals(input) || "strict_week_date_time".equals(input)) { formatter = StrictISODateTimeFormat.weekDateTime(); } else if ("strictWeekDateTimeNoMillis".equals(input) || "strict_week_date_time_no_millis".equals(input)) { formatter = StrictISODateTimeFormat.weekDateTimeNoMillis(); } else if ("strictWeekyear".equals(input) || "strict_weekyear".equals(input)) { formatter = StrictISODateTimeFormat.weekyear(); } else if ("strictWeekyearWeek".equals(input) || "strict_weekyear_week".equals(input)) { formatter = StrictISODateTimeFormat.weekyearWeek(); } else if ("strictWeekyearWeekDay".equals(input) || "strict_weekyear_week_day".equals(input)) { formatter = StrictISODateTimeFormat.weekyearWeekDay(); } else if ("strictYear".equals(input) || "strict_year".equals(input)) { formatter = StrictISODateTimeFormat.year(); } else if ("strictYearMonth".equals(input) || "strict_year_month".equals(input)) { formatter = StrictISODateTimeFormat.yearMonth(); } else if ("strictYearMonthDay".equals(input) || "strict_year_month_day".equals(input)) { formatter = StrictISODateTimeFormat.yearMonthDay(); } else if (Strings.hasLength(input) && input.contains("||")) { String[] formats = Strings.delimitedListToStringArray(input, "||"); DateTimeParser[] parsers = new DateTimeParser[formats.length]; if (formats.length == 1) { formatter = forPattern(input, locale).parser(); } else { DateTimeFormatter dateTimeFormatter = null; for (int i = 0; i < formats.length; i++) { FormatDateTimeFormatter currentFormatter = forPattern(formats[i], locale); DateTimeFormatter currentParser = currentFormatter.parser(); if (dateTimeFormatter == null) { dateTimeFormatter = currentFormatter.printer(); } parsers[i] = currentParser.getParser(); } DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder() .append(dateTimeFormatter.withZone(DateTimeZone.UTC).getPrinter(), parsers); formatter = builder.toFormatter(); } } else { try { formatter = DateTimeFormat.forPattern(input); } catch (IllegalArgumentException e) { throw new IllegalArgumentException("Invalid format: [" + input + "]: " + e.getMessage(), e); } } return new FormatDateTimeFormatter(input, formatter.withZone(DateTimeZone.UTC), locale); }
From source file:org.ddialliance.ddiftp.util.Translator.java
License:Open Source License
/** * Format an ISO8601 time string defined by into a Calendar<BR> * Defined by '-'? yyyy '-' mm '-' dd 'T' hh ':' mm ':' ss ('.' s+)? * (zzzzzz)?/*from w ww. j a v a 2 s . com*/ * * @see http://www.w3.org/TR/xmlschema-2/#dateTime * @param time * string * @return calendar * @throws DDIFtpException */ public static Calendar formatIso8601DateTime(String time) throws DDIFtpException { // yyyy-MM-dd'T'HH:mm:ss.SSSZZ full format DateTimeFormatter fmt = ISODateTimeFormat.dateTime(); try { DateTime dateTime = fmt.parseDateTime(time); return dateTime.toCalendar(getLocale()); } catch (IllegalArgumentException e) { try { // yyyy-MM-dd'T'HH:mm:ssZZ with out millisecond fmt = ISODateTimeFormat.dateTimeNoMillis(); fmt.withLocale(getLocale()); fmt.withZone(DateTimeZone.forTimeZone(getTimeZone())); DateTime dateTime = fmt.parseDateTime(time); return dateTime.toCalendar(getLocale()); } catch (IllegalArgumentException e1) { try { // yyyy-MM-dd'T'HH:mm:ss.SS with out time zone fmt = ISODateTimeFormat.dateHourMinuteSecondFraction(); fmt.withLocale(getLocale()); fmt.withZone(DateTimeZone.forTimeZone(getTimeZone())); DateTime dateTime = fmt.parseDateTime(time); return dateTime.toCalendar(getLocale()); } catch (Exception e2) { try { // yyyy-MM-dd'T'HH:mm:ss with out millisecond and time // zone fmt = ISODateTimeFormat.dateHourMinuteSecond(); fmt.withLocale(getLocale()); fmt.withZone(DateTimeZone.forTimeZone(getTimeZone())); DateTime dateTime = fmt.parseDateTime(time); return dateTime.toCalendar(getLocale()); } catch (IllegalArgumentException e3) { try { fmt = ISODateTimeFormat.dateParser(); fmt.withLocale(getLocale()); fmt.withZone(DateTimeZone.forTimeZone(getTimeZone())); DateTime dateTime = fmt.parseDateTime(time); return dateTime.toCalendar(getLocale()); } catch (Exception e4) { throw new DDIFtpException("translate.timeformat.error", new Object[] { time, "'-'? yyyy '-' mm '-' dd 'T' hh ':' mm ':' ss ('.' s+)? (zzzzzz)?" }, e); } } } } } }
From source file:org.elasticsearch.common.joda.Joda.java
License:Apache License
/** * Parses a joda based pattern, including some named ones (similar to the built in Joda ISO ones). *//*from w w w. j a v a 2 s. co m*/ public static FormatDateTimeFormatter forPattern(String input, Locale locale) { if (Strings.hasLength(input)) { input = input.trim(); } if (input == null || input.length() == 0) { throw new IllegalArgumentException("No date pattern provided"); } DateTimeFormatter formatter; if ("basicDate".equals(input) || "basic_date".equals(input)) { formatter = ISODateTimeFormat.basicDate(); } else if ("basicDateTime".equals(input) || "basic_date_time".equals(input)) { formatter = ISODateTimeFormat.basicDateTime(); } else if ("basicDateTimeNoMillis".equals(input) || "basic_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicDateTimeNoMillis(); } else if ("basicOrdinalDate".equals(input) || "basic_ordinal_date".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDate(); } else if ("basicOrdinalDateTime".equals(input) || "basic_ordinal_date_time".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDateTime(); } else if ("basicOrdinalDateTimeNoMillis".equals(input) || "basic_ordinal_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDateTimeNoMillis(); } else if ("basicTime".equals(input) || "basic_time".equals(input)) { formatter = ISODateTimeFormat.basicTime(); } else if ("basicTimeNoMillis".equals(input) || "basic_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicTimeNoMillis(); } else if ("basicTTime".equals(input) || "basic_t_Time".equals(input)) { formatter = ISODateTimeFormat.basicTTime(); } else if ("basicTTimeNoMillis".equals(input) || "basic_t_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicTTimeNoMillis(); } else if ("basicWeekDate".equals(input) || "basic_week_date".equals(input)) { formatter = ISODateTimeFormat.basicWeekDate(); } else if ("basicWeekDateTime".equals(input) || "basic_week_date_time".equals(input)) { formatter = ISODateTimeFormat.basicWeekDateTime(); } else if ("basicWeekDateTimeNoMillis".equals(input) || "basic_week_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicWeekDateTimeNoMillis(); } else if ("date".equals(input)) { formatter = ISODateTimeFormat.date(); } else if ("dateHour".equals(input) || "date_hour".equals(input)) { formatter = ISODateTimeFormat.dateHour(); } else if ("dateHourMinute".equals(input) || "date_hour_minute".equals(input)) { formatter = ISODateTimeFormat.dateHourMinute(); } else if ("dateHourMinuteSecond".equals(input) || "date_hour_minute_second".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecond(); } else if ("dateHourMinuteSecondFraction".equals(input) || "date_hour_minute_second_fraction".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecondFraction(); } else if ("dateHourMinuteSecondMillis".equals(input) || "date_hour_minute_second_millis".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecondMillis(); } else if ("dateOptionalTime".equals(input) || "date_optional_time".equals(input)) { // in this case, we have a separate parser and printer since the dataOptionalTimeParser can't print // this sucks we should use the root local by default and not be dependent on the node return new FormatDateTimeFormatter(input, ISODateTimeFormat.dateOptionalTimeParser().withZone(DateTimeZone.UTC), ISODateTimeFormat.dateTime().withZone(DateTimeZone.UTC), locale); } else if ("dateTime".equals(input) || "date_time".equals(input)) { formatter = ISODateTimeFormat.dateTime(); } else if ("dateTimeNoMillis".equals(input) || "date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.dateTimeNoMillis(); } else if ("hour".equals(input)) { formatter = ISODateTimeFormat.hour(); } else if ("hourMinute".equals(input) || "hour_minute".equals(input)) { formatter = ISODateTimeFormat.hourMinute(); } else if ("hourMinuteSecond".equals(input) || "hour_minute_second".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecond(); } else if ("hourMinuteSecondFraction".equals(input) || "hour_minute_second_fraction".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecondFraction(); } else if ("hourMinuteSecondMillis".equals(input) || "hour_minute_second_millis".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecondMillis(); } else if ("ordinalDate".equals(input) || "ordinal_date".equals(input)) { formatter = ISODateTimeFormat.ordinalDate(); } else if ("ordinalDateTime".equals(input) || "ordinal_date_time".equals(input)) { formatter = ISODateTimeFormat.ordinalDateTime(); } else if ("ordinalDateTimeNoMillis".equals(input) || "ordinal_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.ordinalDateTimeNoMillis(); } else if ("time".equals(input)) { formatter = ISODateTimeFormat.time(); } else if ("tTime".equals(input) || "t_time".equals(input)) { formatter = ISODateTimeFormat.tTime(); } else if ("tTimeNoMillis".equals(input) || "t_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.tTimeNoMillis(); } else if ("weekDate".equals(input) || "week_date".equals(input)) { formatter = ISODateTimeFormat.weekDate(); } else if ("weekDateTime".equals(input) || "week_date_time".equals(input)) { formatter = ISODateTimeFormat.weekDateTime(); } else if ("weekyear".equals(input) || "week_year".equals(input)) { formatter = ISODateTimeFormat.weekyear(); } else if ("weekyearWeek".equals(input)) { formatter = ISODateTimeFormat.weekyearWeek(); } else if ("year".equals(input)) { formatter = ISODateTimeFormat.year(); } else if ("yearMonth".equals(input) || "year_month".equals(input)) { formatter = ISODateTimeFormat.yearMonth(); } else if ("yearMonthDay".equals(input) || "year_month_day".equals(input)) { formatter = ISODateTimeFormat.yearMonthDay(); } else if (Strings.hasLength(input) && input.contains("||")) { String[] formats = Strings.delimitedListToStringArray(input, "||"); DateTimeParser[] parsers = new DateTimeParser[formats.length]; if (formats.length == 1) { formatter = forPattern(input, locale).parser(); } else { DateTimeFormatter dateTimeFormatter = null; for (int i = 0; i < formats.length; i++) { DateTimeFormatter currentFormatter = forPattern(formats[i], locale).parser(); if (dateTimeFormatter == null) { dateTimeFormatter = currentFormatter; } parsers[i] = currentFormatter.getParser(); } DateTimeFormatterBuilder builder = new DateTimeFormatterBuilder() .append(dateTimeFormatter.withZone(DateTimeZone.UTC).getPrinter(), parsers); formatter = builder.toFormatter(); } } else { try { formatter = DateTimeFormat.forPattern(input); } catch (IllegalArgumentException e) { throw new IllegalArgumentException("Invalid format: [" + input + "]: " + e.getMessage(), e); } } return new FormatDateTimeFormatter(input, formatter.withZone(DateTimeZone.UTC), locale); }
From source file:org.elasticsearch.util.joda.Joda.java
License:Apache License
/** * Parses a joda based pattern, including some named ones (similar to the built in Joda ISO ones). *//*w w w . j a v a2 s . com*/ public static FormatDateTimeFormatter forPattern(String input) { DateTimeFormatter formatter; if ("basicDate".equals(input) || "basic_date".equals(input)) { formatter = ISODateTimeFormat.basicDate(); } else if ("basicDateTime".equals(input) || "basic_date_time".equals(input)) { formatter = ISODateTimeFormat.basicDateTime(); } else if ("basicDateTimeNoMillis".equals(input) || "basic_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicDateTimeNoMillis(); } else if ("basicOrdinalDate".equals(input) || "basic_ordinal_date".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDate(); } else if ("basicOrdinalDateTime".equals(input) || "basic_ordinal_date_time".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDateTime(); } else if ("basicOrdinalDateTimeNoMillis".equals(input) || "basic_ordinal_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicOrdinalDateTimeNoMillis(); } else if ("basicTime".equals(input) || "basic_time".equals(input)) { formatter = ISODateTimeFormat.basicTime(); } else if ("basicTimeNoMillis".equals(input) || "basic_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicTimeNoMillis(); } else if ("basicTTime".equals(input) || "basic_t_Time".equals(input)) { formatter = ISODateTimeFormat.basicTTime(); } else if ("basicTTimeNoMillis".equals(input) || "basic_t_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicTTimeNoMillis(); } else if ("basicWeekDate".equals(input) || "basic_week_date".equals(input)) { formatter = ISODateTimeFormat.basicWeekDate(); } else if ("basicWeekDateTime".equals(input) || "basic_week_date_time".equals(input)) { formatter = ISODateTimeFormat.basicWeekDateTime(); } else if ("basicWeekDateTimeNoMillis".equals(input) || "basic_week_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.basicWeekDateTimeNoMillis(); } else if ("date".equals(input)) { formatter = ISODateTimeFormat.date(); } else if ("dateHour".equals(input) || "date_hour".equals(input)) { formatter = ISODateTimeFormat.dateHour(); } else if ("dateHourMinute".equals(input) || "date_hour_minute".equals(input)) { formatter = ISODateTimeFormat.dateHourMinute(); } else if ("dateHourMinuteSecond".equals(input) || "date_hour_minute_second".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecond(); } else if ("dateHourMinuteSecondFraction".equals(input) || "date_hour_minute_second_fraction".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecondFraction(); } else if ("dateHourMinuteSecondMillis".equals(input) || "date_hour_minute_second_millis".equals(input)) { formatter = ISODateTimeFormat.dateHourMinuteSecondMillis(); } else if ("dateOptionalTime".equals(input) || "date_optional_time".equals(input)) { // in this case, we have a separate parser and printer since the dataOptionalTimeParser can't print return new FormatDateTimeFormatter(input, ISODateTimeFormat.dateOptionalTimeParser().withZone(DateTimeZone.UTC), ISODateTimeFormat.dateTime().withZone(DateTimeZone.UTC)); } else if ("dateTime".equals(input) || "date_time".equals(input)) { formatter = ISODateTimeFormat.dateTime(); } else if ("dateTimeNoMillis".equals(input) || "date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.dateTimeNoMillis(); } else if ("hour".equals(input)) { formatter = ISODateTimeFormat.hour(); } else if ("hourMinute".equals(input) || "hour_minute".equals(input)) { formatter = ISODateTimeFormat.hourMinute(); } else if ("hourMinuteSecond".equals(input) || "hour_minute_second".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecond(); } else if ("hourMinuteSecondFraction".equals(input) || "hour_minute_second_fraction".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecondFraction(); } else if ("hourMinuteSecondMillis".equals(input) || "hour_minute_second_millis".equals(input)) { formatter = ISODateTimeFormat.hourMinuteSecondMillis(); } else if ("ordinalDate".equals(input) || "ordinal_date".equals(input)) { formatter = ISODateTimeFormat.ordinalDate(); } else if ("ordinalDateTime".equals(input) || "ordinal_date_time".equals(input)) { formatter = ISODateTimeFormat.ordinalDateTime(); } else if ("ordinalDateTimeNoMillis".equals(input) || "ordinal_date_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.ordinalDateTimeNoMillis(); } else if ("time".equals(input)) { formatter = ISODateTimeFormat.time(); } else if ("tTime".equals(input) || "t_time".equals(input)) { formatter = ISODateTimeFormat.tTime(); } else if ("tTimeNoMillis".equals(input) || "t_time_no_millis".equals(input)) { formatter = ISODateTimeFormat.tTimeNoMillis(); } else if ("weekDate".equals(input) || "week_date".equals(input)) { formatter = ISODateTimeFormat.weekDate(); } else if ("weekDateTime".equals(input) || "week_date_time".equals(input)) { formatter = ISODateTimeFormat.weekDateTime(); } else if ("weekyear".equals(input) || "week_year".equals(input)) { formatter = ISODateTimeFormat.weekyear(); } else if ("weekyearWeek".equals(input)) { formatter = ISODateTimeFormat.weekyearWeek(); } else if ("year".equals(input)) { formatter = ISODateTimeFormat.year(); } else if ("yearMonth".equals(input) || "year_month".equals(input)) { formatter = ISODateTimeFormat.yearMonth(); } else if ("yearMonthDay".equals(input) || "year_month_day".equals(input)) { formatter = ISODateTimeFormat.yearMonthDay(); } else { formatter = DateTimeFormat.forPattern(input); } formatter.withZone(DateTimeZone.UTC); return new FormatDateTimeFormatter(input, formatter); }
From source file:org.filteredpush.qc.date.DateUtils.java
License:Apache License
/** * Does eventDate match an ISO date that contains a time (including the instant of * midnight (a time with all zero elements)). * /*from ww w . jav a 2s . com*/ * @param eventDate string to check for an ISO date with a time. * @return true if eventDate is an ISO date that includes a time, or if eventDate is an * ISO date range either the start or end of which contains a time. */ public static boolean containsTime(String eventDate) { boolean result = false; if (!isEmpty(eventDate)) { if (eventDate.endsWith("UTC")) { eventDate = eventDate.replace("UTC", "Z"); } DateTimeParser[] parsers = { ISODateTimeFormat.dateHour().getParser(), ISODateTimeFormat.dateTimeParser().getParser(), ISODateTimeFormat.dateHourMinute().getParser(), ISODateTimeFormat.dateHourMinuteSecond().getParser(), ISODateTimeFormat.dateTime().getParser() }; DateTimeFormatter formatter = new DateTimeFormatterBuilder().append(null, parsers).toFormatter(); if (eventDate.matches("^[0-9]{4}[-][0-9]{2}[-][0-9]{2}[Tt].+")) { try { LocalDate match = LocalDate.parse(eventDate, formatter); result = true; logger.debug(match); } catch (Exception e) { // not a date with a time logger.error(e.getMessage()); } } if (isRange(eventDate) && eventDate.contains("/") && !result) { String[] bits = eventDate.split("/"); if (bits != null && bits.length > 1) { // does either start or end date contain a time? if (bits[0].matches("^[0-9]{4}[-][0-9]{2}[-][0-9]{2}[Tt].+")) { try { LocalDate match = LocalDate.parse(bits[0], formatter); result = true; logger.debug(match); } catch (Exception e) { // not a date with a time logger.error(e.getMessage()); } } if (bits[1].matches("^[0-9]{4}[-][0-9]{2}[-][0-9]{2}[Tt].+")) { try { LocalDate match = LocalDate.parse(bits[1], formatter); result = true; logger.debug(match); } catch (Exception e) { // not a date with a time logger.error(e.getMessage()); } } } } } return result; }
From source file:org.filteredpush.qc.date.DateUtils.java
License:Apache License
/** * Attempt to extract a time from an eventDate that could contain time information. * /*from ww w . j a v a 2 s . c om*/ * @param eventDate dwc:eventDate from which to try to extract a time (in UTC). * @return a string containing a time in UTC or null */ public static String extractZuluTime(String eventDate) { String result = null; if (!isEmpty(eventDate)) { if (eventDate.endsWith("UTC")) { eventDate = eventDate.replace("UTC", "Z"); } DateTimeParser[] parsers = { ISODateTimeFormat.dateHour().getParser(), ISODateTimeFormat.dateTimeParser().getParser(), ISODateTimeFormat.dateHourMinute().getParser(), ISODateTimeFormat.dateHourMinuteSecond().getParser(), ISODateTimeFormat.dateTime().getParser() }; DateTimeFormatter formatter = new DateTimeFormatterBuilder().append(null, parsers).toFormatter(); if (eventDate.matches("^[0-9]{4}[-][0-9]{2}[-][0-9]{2}[Tt].+")) { try { result = instantToStringTime(Instant.parse(eventDate, formatter)); logger.debug(result); } catch (Exception e) { // not a date with a time logger.error(e.getMessage()); } } if (isRange(eventDate) && eventDate.contains("/") && result != null) { String[] bits = eventDate.split("/"); if (bits != null && bits.length > 1) { // does either start or end date contain a time? if (bits[0].matches("^[0-9]{4}[-][0-9]{2}[-][0-9]{2}[Tt].+")) { try { result = instantToStringTime(Instant.parse(bits[0], formatter)); logger.debug(result); } catch (Exception e) { // not a date with a time logger.error(e.getMessage()); } } if (bits[1].matches("^[0-9]{4}[-][0-9]{2}[-][0-9]{2}[Tt].+") && result != null) { try { result = instantToStringTime(Instant.parse(bits[1], formatter)); logger.debug(result); } catch (Exception e) { // not a date with a time logger.error(e.getMessage()); } } } } } return result; }
From source file:org.jtwig.functions.builtin.DateFunctions.java
License:Apache License
@JtwigFunction(name = "date") public String format(@Parameter Date input) { if (input == null) return ""; return LocalDateTime.fromDateFields(input).toString(ISODateTimeFormat.dateHourMinuteSecond()); }
From source file:org.kuali.kpme.tklm.time.detail.web.ActionFormUtils.java
License:Educational Community License
/** * This method will build the JSON data structure needed for calendar * manipulation and processing on the client side. Start and End times here * are based on the pre-timezone adjusted times startDisplayTime, and * endDisplayTime.//from w w w .j a v a2 s.c om * * @param timeBlocks * @return */ public static String getTimeBlocksJson(List<TimeBlock> timeBlocks) { if (timeBlocks == null || timeBlocks.size() == 0) { return ""; } List<Map<String, Object>> timeBlockList = new LinkedList<Map<String, Object>>(); String timezone = HrServiceLocator.getTimezoneService().getUserTimezone(); for (TimeBlock timeBlock : timeBlocks) { Map<String, Object> timeBlockMap = new LinkedHashMap<String, Object>(); WorkArea workArea = HrServiceLocator.getWorkAreaService().getWorkArea(timeBlock.getWorkArea(), timeBlock.getEndDateTime().toLocalDate()); String workAreaDesc = workArea.getDescription(); String principalId = GlobalVariables.getUserSession().getPrincipalId(); boolean isAnyApprover = HrServiceLocator.getKPMERoleService().principalHasRole(principalId, KPMENamespace.KPME_HR.getNamespaceCode(), KPMERole.APPROVER.getRoleName(), new DateTime()) || HrServiceLocator.getKPMERoleService().principalHasRole(principalId, KPMENamespace.KPME_HR.getNamespaceCode(), KPMERole.APPROVER_DELEGATE.getRoleName(), new DateTime()); timeBlockMap.put("isApprover", isAnyApprover); timeBlockMap.put("isSynchronousUser", timeBlock.getClockLogCreated()); timeBlockMap.put("canEditTb", TkServiceLocator.getTKPermissionService().canEditTimeBlock(principalId, timeBlock)); timeBlockMap.put("canEditTBOvt", TkServiceLocator.getTKPermissionService().canEditOvertimeEarnCode(timeBlock)); if (TkServiceLocator.getTKPermissionService().canEditTimeBlockAllFields(principalId, timeBlock)) { timeBlockMap.put("canEditTBAll", true); timeBlockMap.put("canEditTBAssgOnly", false); } else { timeBlockMap.put("canEditTBAll", false); timeBlockMap.put("canEditTBAssgOnly", true); } // tracking any kind of 'mutating' state with this object, it's just a one off modification under a specific circumstance. DateTime start = timeBlock.getBeginTimeDisplay(); DateTime end = timeBlock.getEndTimeDisplay(); /** * This is the timeblock backward pushing logic. * the purpose of this is to accommodate the virtual day mode where the start/end period time is not from 12a to 12a. * A timeblock will be pushed back if the timeblock is still within the previous interval */ if (timeBlock.getPushBackward()) { start = start.minusDays(1); end = end.minusDays(1); } timeBlockMap.put("documentId", timeBlock.getDocumentId()); timeBlockMap.put("title", workAreaDesc); EarnCode ec = HrServiceLocator.getEarnCodeService().getEarnCode(timeBlock.getEarnCode(), timeBlock.getBeginDateTime().toLocalDate()); timeBlockMap.put("earnCode", timeBlock.getEarnCode()); timeBlockMap.put("earnCodeDesc", ec != null ? ec.getDescription() : StringUtils.EMPTY); //TODO: need to cache this or pre-load it when the app boots up // EarnCode earnCode = HrServiceLocator.getEarnCodeService().getEarnCode(timeBlock.getEarnCode(), timeBlock.getBeginDateTime().toLocalDate()); timeBlockMap.put("earnCodeType", timeBlock.getEarnCodeType()); // TODO: Cleanup the start / end time related properties. We certainly don't need all of them. // The ones which are used by the javascript are startDate, endDate, startTime, endTime, startTimeHourMinute, and endTimeHourMinute timeBlockMap.put("start", start.toString(ISODateTimeFormat.dateTimeNoMillis())); timeBlockMap.put("end", end.toString(ISODateTimeFormat.dateTimeNoMillis())); timeBlockMap.put("startDate", start.toString(HrConstants.DT_BASIC_DATE_FORMAT)); timeBlockMap.put("endDate", end.toString(HrConstants.DT_BASIC_DATE_FORMAT)); timeBlockMap.put("startNoTz", start.toString(ISODateTimeFormat.dateHourMinuteSecond())); timeBlockMap.put("endNoTz", end.toString(ISODateTimeFormat.dateHourMinuteSecond())); // start / endTimeHourMinute fields are for only for the display purpose timeBlockMap.put("startTimeHourMinute", start.toString(TkConstants.DT_BASIC_TIME_FORMAT)); timeBlockMap.put("endTimeHourMinute", end.toString(TkConstants.DT_BASIC_TIME_FORMAT)); // start / endTime are the actual fields used by the adding / editing timeblocks timeBlockMap.put("startTime", start.toString(TkConstants.DT_MILITARY_TIME_FORMAT)); timeBlockMap.put("endTime", end.toString(TkConstants.DT_MILITARY_TIME_FORMAT)); timeBlockMap.put("id", timeBlock.getTkTimeBlockId() == null ? null : timeBlock.getTkTimeBlockId().toString()); timeBlockMap.put("hours", timeBlock.getHours()); timeBlockMap.put("amount", timeBlock.getAmount()); timeBlockMap.put("timezone", timezone); timeBlockMap.put("assignment", new AssignmentDescriptionKey(timeBlock.getJobNumber(), timeBlock.getWorkArea(), timeBlock.getTask()).toAssignmentKeyString()); timeBlockMap.put("tkTimeBlockId", timeBlock.getTkTimeBlockId() != null ? timeBlock.getTkTimeBlockId() : ""); timeBlockMap.put("lunchDeleted", timeBlock.isLunchDeleted()); List<Map<String, Object>> timeHourDetailList = new LinkedList<Map<String, Object>>(); for (TimeHourDetail timeHourDetail : timeBlock.getTimeHourDetails()) { Map<String, Object> timeHourDetailMap = new LinkedHashMap<String, Object>(); timeHourDetailMap.put("earnCode", timeHourDetail.getEarnCode()); timeHourDetailMap.put("hours", timeHourDetail.getHours()); timeHourDetailMap.put("amount", timeHourDetail.getAmount()); // if there is a lunch hour deduction, add a flag to the timeBlockMap if (StringUtils.equals(timeHourDetail.getEarnCode(), "LUN")) { timeBlockMap.put("lunchDeduction", true); } timeHourDetailList.add(timeHourDetailMap); } timeBlockMap.put("timeHourDetails", JSONValue.toJSONString(timeHourDetailList)); timeBlockList.add(timeBlockMap); } // Map<String, Map<String, Object>> jsonMappedList = new HashMap<String, Map<String, Object>>(); // for (Map<String, Object> tbm : timeBlockList) { // String id = (String) tbm.get("id"); // jsonMappedList.put(id, tbm); // } return JSONValue.toJSONString(timeBlockList); }
From source file:org.spf4j.perf.impl.chart.QuantizedXYZDatasetImpl.java
License:Open Source License
public TickUnits createXTickUnits() { TickUnits tux = new TickUnits(); if (data.length == 0) { return tux; }/* www. j a v a2 s . c om*/ final DateTimeFormatter formatter = ISODateTimeFormat.dateHourMinuteSecond(); final DateTimeFormatter shortFormat = ISODateTimeFormat.dateHour(); final DateTimeFormatter mediumFormat = ISODateTimeFormat.dateHourMinute(); final long[] timestamps = new long[data[0].length]; long time = startTimeMillis; for (int i = 0; i < timestamps.length; i++) { timestamps[i] = time; time += stepMillis; } tux.add(new TimestampTickUnitImpl(1, timestamps, stepMillis, formatter)); // base long nr = 5000L / stepMillis; if (nr > 1) { tux.add(new TimestampTickUnitImpl(nr, timestamps, stepMillis, formatter)); } nr = 15000L / stepMillis; if (nr > 1) { tux.add(new TimestampTickUnitImpl(nr, timestamps, stepMillis, formatter)); } // minute nr = 60000L / stepMillis; if (nr > 1) { tux.add(new TimestampTickUnitImpl(nr, timestamps, stepMillis, mediumFormat)); } // 15 minute nr = 900000L / stepMillis; if (nr > 1) { tux.add(new TimestampTickUnitImpl(nr, timestamps, stepMillis, mediumFormat)); } // hour nr = 3600000L / stepMillis; if (nr > 1) { tux.add(new TimestampTickUnitImpl(nr, timestamps, stepMillis, shortFormat)); } // 6 hour nr = 21600000L / stepMillis; if (nr > 1) { tux.add(new TimestampTickUnitImpl(nr, timestamps, stepMillis, shortFormat)); } return tux; }