code: private Optional<ZonedDateTime> getMaintenanceWindowEndTime() {
          return getMaintenanceWindowStartTime()
                  .map(start -> start.plus(MaintenanceScheduleHelper.convertToISODuration(maintenanceWindowDuration)));
      }
docs: Returns the end time of next available or active maintenance window for
  the {@link Action} as {@link ZonedDateTime}. If a maintenance window is
  already active, the end time of currently active window is returned.
  
  @return the end time of window as { @link Optional<ZonedDateTime>}.