DateTimeUtils extends TimeUtils { public static long parseDateTime(String dateTimeStr) { OffsetDateTime dateTime = OffsetDateTime.parse(dateTimeStr, DateTimeFormatter.ISO_DATE_TIME); return dateTime.toInstant().toEpochMilli(); }  static boolean isRepeatable(String dateTimeStr); static boolean isPeriod(String dateTimeStr); static boolean isNumeric(String dateTimeStr); static long parseDateTime(String dateTimeStr); static long parseDuration(String durationStr); static long parseDateAsDuration(String dateTimeStr); static String[] parseISORepeatable(String isoString); static long[] parseRepeatableDateTime(String dateTimeStr);  }
@Test public void testParseDateTime() { OffsetDateTime hourAfterEpoch = OffsetDateTime.of(1970, 1, 1, 1, 0, 0, 0, ZoneOffset.UTC); long parsedMilliseconds = DateTimeUtils.parseDateTime(hourAfterEpoch.format(DateTimeFormatter.ISO_DATE_TIME)); assertEquals(HOUR_IN_MILLISECONDS, parsedMilliseconds); }