code: public long getDateTimeMillis(int year, int monthOfYear, int dayOfMonth,
                                    int hourOfDay, int minuteOfHour,
                                    int secondOfMinute, int millisOfSecond)
          throws IllegalArgumentException
      {
          long instant = year().set(0, year);
          instant = monthOfYear().set(instant, monthOfYear);
          instant = dayOfMonth().set(instant, dayOfMonth);
          instant = hourOfDay().set(instant, hourOfDay);
          instant = minuteOfHour().set(instant, minuteOfHour);
          instant = secondOfMinute().set(instant, secondOfMinute);
          return millisOfSecond().set(instant, millisOfSecond);
      }
docs: Returns a datetime millisecond instant, formed from the given year,
  month, day, hour, minute, second, and millisecond values. The set of
  given values must refer to a valid datetime, or else an
  IllegalArgumentException is thrown.
  <p>
  The default implementation calls upon separate DateTimeFields to
  determine the result. Subclasses are encouraged to provide a more
  efficient implementation.
  
  @param year year to use
  @param monthOfYear month to use
  @param dayOfMonth day of month to use
  @param hourOfDay hour to use
  @param minuteOfHour minute to use
  @param secondOfMinute second to use
  @param millisOfSecond millisecond to use
  @return millisecond instant from 1970-01-01T00:00:00Z