code: public synchronized Date getDate(TimeZone tz) {
          if (dateString == null) {
              return null;
          }
  
          startJobDateFormat.setTimeZone(tz);
          try {
              return startJobDateFormat.parse(dateString);
          } catch (ParseException e) {
              // This exception should not be possible. Even when dealing with TZ DST
              // transitions, all dates exist. Time that does not exist because of
              // forward DST transition, get automatically forwarded during parsing.
              throw new RuntimeException("Internal problem with Java and timezones " +
                      dateString + " @TZ: " + tz.toString());
          }
      }
docs: Returns {@link Date} representation of StartTime as parsed at a given timezone.
  Master does not return a timezone associated with StartTime timestamp string,
  therefore an explicit timezone needs to be provided for correct parsing.
  
  @param tz TimeZone associated with master.
  @return {@link Date} representation of StartTime at provided timezone