code: public String toStringForTimeZone(T dateTime, String newZoneID) {
      return toDateTime(dateTime)
          .withZone(DateTimeZone.forTimeZone(TimeZone.getTimeZone(newZoneID)))
          .toString(ISODateTimeFormat.dateHourMinuteSecond());
    }
docs: Returns string representation of this date time with a different time
  zone, preserving the millisecond instant.
  <p>This method is useful for finding the local time in another time zone,
  especially for filtering.
  <p>For example, if this date time holds 12:30 in Europe/London, the result
  from this method with Europe/Paris would be 13:30. You may also want to use
  this with your network's time zone, i.e.
  <pre><code> String timeZoneId = networkService.getCurrentNetwork().getTimeZone();
  String statementPart =
  "startDateTime > "
  + DateTimes.toString(apiDateTime, timeZoneId);
  //...
  statementBuilder.where(statementPart);
  </code></pre>
  This method is in the same style of
  {@link DateTime#withZone(org.joda.time.DateTimeZone)}.
  
  @param dateTime the date time to stringify into a new time zone
  @param newZoneID the time zone ID of the new zone
  @return a string representation of the {@code DateTime} in
  {@code yyyy-MM-dd'T'HH:mm:ss}