/** * Construct a new ISODate based on its relation to a referenceDate. relativeDate should be * something like "today" or "tomorrow" or "last year" and the resulting ISODate will be the same * as the referenceDate, a day later, or a year earlier, respectively. */ public ISODateInstance(ISODateInstance referenceDate, String relativeDate) { Pair<DateField, Integer> relation = relativeDateMap.get(relativeDate.toLowerCase()); if (relation != null) { switch (relation.first()) { case DAY: incrementDay(referenceDate, relation); break; case MONTH: incrementMonth(referenceDate, relation); break; case YEAR: incrementYear(referenceDate, relation); break; } } }