SUTime.IsoDate isoDate = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); if (time != null) { SUTime.IsoTime isoTime = new SUTime.IsoTime(m.group(5), m.group(6), m.group(7), m.group(8)); return new SUTime.IsoDateTime(isoDate,isoTime); } else { if (m.matches()) { SUTime.IsoDate date = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); SUTime.IsoTime time = new SUTime.IsoTime(m.group(4), m.group(5), null); return new SUTime.IsoDateTime(date,time); return new SUTime.IsoTime(m.group(1), m.group(2), m.group(3), m.group(4)); if (m.matches()) { isoTime = new SUTime.IsoTime(m.group(1), m.group(2), m.group(4));
String s = (secGroup >= 0)? results.group(secGroup):null; if (h != null || m != null || s != null) { isoTime = new SUTime.IsoTime(h,m,s);
SUTime.IsoDate isoDate = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); if (time != null) { SUTime.IsoTime isoTime = new SUTime.IsoTime(m.group(5), m.group(6), m.group(7), m.group(8)); return new SUTime.IsoDateTime(isoDate,isoTime); } else { if (m.matches()) { SUTime.IsoDate date = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); SUTime.IsoTime time = new SUTime.IsoTime(m.group(4), m.group(5), null); return new SUTime.IsoDateTime(date,time); return new SUTime.IsoTime(m.group(1), m.group(2), m.group(3), m.group(4)); if (m.matches()) { isoTime = new SUTime.IsoTime(m.group(1), m.group(2), m.group(4));
SUTime.IsoDate isoDate = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); if (time != null) { SUTime.IsoTime isoTime = new SUTime.IsoTime(m.group(5), m.group(6), m.group(7), m.group(8)); return new SUTime.IsoDateTime(isoDate,isoTime); } else { if (m.matches()) { SUTime.IsoDate date = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); SUTime.IsoTime time = new SUTime.IsoTime(m.group(4), m.group(5), null); return new SUTime.IsoDateTime(date,time); m = p.matcher(dateStr); if (m.matches()) { return new SUTime.IsoTime(m.group(1), m.group(2), m.group(3), m.group(4)); m = p.matcher(dateStr); if (m.matches()) { isoTime = new SUTime.IsoTime(m.group(1), m.group(2), m.group(3));
SUTime.IsoDate isoDate = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); if (time != null) { SUTime.IsoTime isoTime = new SUTime.IsoTime(m.group(5), m.group(6), m.group(7), m.group(8)); return new SUTime.IsoDateTime(isoDate,isoTime); } else { if (m.matches()) { SUTime.IsoDate date = new SUTime.IsoDate(m.group(1), m.group(2), m.group(3)); SUTime.IsoTime time = new SUTime.IsoTime(m.group(4), m.group(5), null); return new SUTime.IsoDateTime(date,time); return new SUTime.IsoTime(m.group(1), m.group(2), m.group(3), m.group(4)); if (m.matches()) { isoTime = new SUTime.IsoTime(m.group(1), m.group(2), m.group(4));
public SUTime.Temporal apply(String text) { // TODO: TIMEZONE? DateTime dateTime = null; try { dateTime = formatter.parseDateTime(text); } catch(org.joda.time.IllegalFieldValueException e) { logger.warning("WARNING: Invalid temporal \"" + text + "\" (" + e.getMessage() + "). Skipping and continuing..."); return null; } assert(dateTime != null); if (hasDate && hasTime) { return new SUTime.GroundedTime(dateTime); // return new SUTime.IsoDateTime( new SUTime.IsoTime(dateTime.getHourOfDay(), dateTime.getMinuteOfHour(), dateTime.getSecondOfMinute()); // Date d = new SUTime.IsoDate(dateTime.getYear(), dateTime.getMonthOfYear(), dateTime.getDayOfMonth()) ); } else if (hasTime) { // TODO: Millisecs? return new SUTime.IsoTime(dateTime.getHourOfDay(), dateTime.getMinuteOfHour(), dateTime.getSecondOfMinute()); } else if (hasDate) { return new SUTime.IsoDate(dateTime.getYear(), dateTime.getMonthOfYear(), dateTime.getDayOfMonth()); } else { return null; } }