public CalendarDate makeCalendarDateFromOffset(String offset) { return CalendarDateFormatter.isoStringToCalendarDate(calendar, offset); }
public CalendarDate makeCalendarDateFromOffset(String offset) { return CalendarDateFormatter.isoStringToCalendarDate(calendar, offset); }
/** * Does not handle non-standard Calendars * @param iso iso formatted string * @return Date * @throws IllegalArgumentException * @deprecated use isoStringToCalendarDate */ static public Date isoStringToDate(String iso) throws IllegalArgumentException { CalendarDate dt = isoStringToCalendarDate(null, iso); return dt.toDate(); }
/** * Does not handle non-standard Calendars * @param iso iso formatted string * @return Date * @throws IllegalArgumentException * @deprecated use isoStringToCalendarDate */ static public Date isoStringToDate(String iso) throws IllegalArgumentException { CalendarDate dt = isoStringToCalendarDate(null, iso); return dt.toDate(); }
private CalendarDate makeCalendarDateFromStringCoord(String coordValue, VariableDS org, Formatter errMessages) throws IOException { CalendarDate cd = CalendarDateFormatter.isoStringToCalendarDate(calendar, coordValue); if (cd == null) { if (errMessages != null) { errMessages.format("String time coordinate must be ISO formatted= %s\n", coordValue); logger.info("Char time coordinate must be ISO formatted= {} file = {}", coordValue, org.getDatasetLocation()); } throw new IllegalArgumentException(); } return cd; }
/** * Does not handle non-standard Calendars * @param iso iso formatted string * @return Date * @throws IllegalArgumentException * @deprecated use isoStringToCalendarDate */ static public Date isoStringToDate(String iso) throws IllegalArgumentException { CalendarDate dt = isoStringToCalendarDate(null, iso); return dt.toDate(); }
/** * Parses the given ISO date, assuming proleptic Gregorian calendar and UTC time zone. * * @param value the date in ISO format. * @return the parsed date. * @throws IllegalArgumentException if the given date can not be parsed. */ private static Date parseDate(final String value) throws IllegalArgumentException { return new Date(CalendarDateFormatter.isoStringToCalendarDate(Calendar.proleptic_gregorian, value).getMillis()); }
/** * Get CalendarDate from ISO date string * @param calendarName get Calendar from Calendar.get(calendarName). may be null * @param isoDateString ISO date string * @return CalendarDate */ public static CalendarDate parseISOformat(String calendarName, String isoDateString) { Calendar cal = Calendar.get(calendarName); if (cal == null) cal = Calendar.getDefault(); return CalendarDateFormatter.isoStringToCalendarDate(cal, isoDateString); }
private void claimBad(String s) { try { CalendarDate result = CalendarDateFormatter.isoStringToCalendarDate(null, s); logger.error("FAIL %s%n", s); assert false; } catch (Exception e) { logger.debug("Expected fail = %s%n", s); return; } }
private void claimGood(String s) { try { CalendarDate result = CalendarDateFormatter.isoStringToCalendarDate(null, s); logger.debug("%s == %s%n", s, result); } catch (Exception e) { logger.error("FAIL %s%n", s); e.printStackTrace(); CalendarDateFormatter.isoStringToCalendarDate(null, s); assert false; } }
/** * Get CalendarDate from ISO date string * @param calendarName get Calendar from Calendar.get(calendarName). may be null * @param isoDateString ISO date string * @return CalendarDate */ public static CalendarDate parseISOformat(String calendarName, String isoDateString) { Calendar cal = Calendar.get(calendarName); if (cal == null) cal = Calendar.getDefault(); return CalendarDateFormatter.isoStringToCalendarDate(cal, isoDateString); }
/** * Get CalendarDate from ISO date string * @param calendarName get Calendar from Calendar.get(calendarName). may be null * @param isoDateString ISO date string * @return CalendarDate */ public static CalendarDate parseISOformat(String calendarName, String isoDateString) { Calendar cal = Calendar.get(calendarName); if (cal == null) cal = Calendar.getDefault(); return CalendarDateFormatter.isoStringToCalendarDate(cal, isoDateString); }
private double getTime(CoordVarExtractor cve, StructureData[] tableData) { if (cve == null) return Double.NaN; if (tableData[cve.nestingLevel] == null) return Double.NaN; if (cve.isString()) { String timeString = timeVE.getCoordValueString(tableData); CalendarDate date = CalendarDateFormatter.isoStringToCalendarDate(null, timeString); if (date == null) { log.error("Cant parse date - not ISO formatted, = "+timeString); return 0.0; } return date.getMillis(); } else { return cve.getCoordValue(tableData); } }
private double getTime(CoordVarExtractor cve, StructureData[] tableData) { if (cve == null) return Double.NaN; if (tableData[cve.nestingLevel] == null) return Double.NaN; if (cve.isString()) { String timeString = timeVE.getCoordValueString(tableData); CalendarDate date = CalendarDateFormatter.isoStringToCalendarDate(null, timeString); if (date == null) { log.error("Cant parse date - not ISO formatted, = "+timeString); return 0.0; } return date.getMillis(); } else { return cve.getCoordValue(tableData); } }
private double getTime(CoordVarExtractor cve, StructureData[] tableData) { if (cve == null) return Double.NaN; if (tableData[cve.nestingLevel] == null) return Double.NaN; if (cve.isString()) { String timeString = timeVE.getCoordValueString(tableData); CalendarDate date = CalendarDateFormatter.isoStringToCalendarDate(null, timeString); if (date == null) { log.error("Cant parse date - not ISO formatted, = " + timeString); return 0.0; } return date.getMillis(); } else { return cve.getCoordValue(tableData); } }
private double getTime(StructureMembers.Member timeVar, StructureData sdata) { if (timeVar == null) return 0.0; if ((timeVar.getDataType() == DataType.CHAR) || (timeVar.getDataType() == DataType.STRING)) { String time = sdata.getScalarString(timeVar); CalendarDate date = CalendarDateFormatter.isoStringToCalendarDate(null, time); if (date == null) { log.error("Cant parse date - not ISO formatted, = " + time); return 0.0; } return date.getMillis() / 1000.0; } else { return sdata.convertScalarDouble(timeVar); } }
private double getTime(StructureMembers.Member timeVar, StructureData sdata) { if (timeVar == null) return 0.0; if ((timeVar.getDataType() == DataType.CHAR) || (timeVar.getDataType() == DataType.STRING)) { String time = sdata.getScalarString(timeVar); CalendarDate date = CalendarDateFormatter.isoStringToCalendarDate(null, time); if (date == null) { log.error("Cant parse date - not ISO formatted, = "+time); return 0.0; } return date.getMillis() / 1000.0; } else { return sdata.convertScalarDouble(timeVar); } }
@Test public void testCalendarToDate() { CalendarDate cdate = CalendarDateFormatter.isoStringToCalendarDate(Calendar.uniform30day, "1968-01-30T15:00:00.000Z"); System.out.printf("%s%n", cdate); System.out.printf("%s%n", cdate.getDateTime()); System.out.printf("%s%n", cdate.toDate()); System.out.printf("%s%n", CalendarDateFormatter.toDateTimeStringISO(cdate.toDate())); System.out.printf("%s%n", CalendarDateFormatter.toDateString(cdate)); CalendarDateFormatter cdf = new CalendarDateFormatter("yyyyMMdd"); System.out.printf("%s%n", cdf.toString(cdate)); }
private void assertAddReturnsExpectedDate(String baseDate, double value, Field units, String expectedResult) { CalendarDate base = CalendarDateFormatter.isoStringToCalendarDate(Calendar.gregorian, baseDate); CalendarDate result = base.add(value, units); assertEquals(units.toString(), expectedResult, CalendarDateFormatter.toDateTimeStringISO(result)); }
@Test public void testCOARDSdefaultCalendar() throws IOException { try (GridDataset ds = GridDataset.open(TestDir.cdmUnitTestDir + "conventions/coards/olr.day.mean.nc")) { GeoGrid grid = ds.findGridByName("olr"); assert grid != null; GridCoordSystem gcs = grid.getCoordinateSystem(); CoordinateAxis1DTime time = gcs.getTimeAxis1D(); assert time != null; CalendarDate first = time.getCalendarDate(0); CalendarDate cd = CalendarDateFormatter.isoStringToCalendarDate(Calendar.gregorian, "2002-01-01T00:00:00Z"); assert first.equals(cd) : first + " != " + cd; CalendarDate last = time.getCalendarDate((int) time.getSize() - 1); CalendarDate cd2 = CalendarDateFormatter.isoStringToCalendarDate(Calendar.gregorian, "2012-12-02T00:00:00Z"); assert last.equals(cd2) : last + " != " + cd2; } }