public ReservationServiceSettings reservationServiceSettings()

in spring-cloud-previews/google-cloud-bigqueryreservation-spring-starter/src/main/java/com/google/cloud/bigquery/reservation/v1/spring/ReservationServiceSpringAutoConfiguration.java [123:628]


  public ReservationServiceSettings reservationServiceSettings(
      @Qualifier("defaultReservationServiceTransportChannelProvider")
          TransportChannelProvider defaultTransportChannelProvider)
      throws IOException {
    ReservationServiceSettings.Builder clientSettingsBuilder;
    if (this.clientProperties.getUseRest()) {
      clientSettingsBuilder = ReservationServiceSettings.newHttpJsonBuilder();
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace("Using REST (HTTP/JSON) transport.");
      }
    } else {
      clientSettingsBuilder = ReservationServiceSettings.newBuilder();
    }
    clientSettingsBuilder
        .setCredentialsProvider(this.credentialsProvider)
        .setTransportChannelProvider(defaultTransportChannelProvider)
        .setEndpoint(ReservationServiceSettings.getDefaultEndpoint())
        .setHeaderProvider(this.userAgentHeaderProvider());
    if (this.clientProperties.getQuotaProjectId() != null) {
      clientSettingsBuilder.setQuotaProjectId(this.clientProperties.getQuotaProjectId());
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Quota project id set to "
                + this.clientProperties.getQuotaProjectId()
                + ", this overrides project id from credentials.");
      }
    }
    if (this.clientProperties.getExecutorThreadCount() != null) {
      ExecutorProvider executorProvider =
          ReservationServiceSettings.defaultExecutorProviderBuilder()
              .setExecutorThreadCount(this.clientProperties.getExecutorThreadCount())
              .build();
      clientSettingsBuilder.setBackgroundExecutorProvider(executorProvider);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Background executor thread count is "
                + this.clientProperties.getExecutorThreadCount());
      }
    }
    Retry serviceRetry = clientProperties.getRetry();
    if (serviceRetry != null) {
      RetrySettings createReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.createReservationSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .createReservationSettings()
          .setRetrySettings(createReservationRetrySettings);

      RetrySettings listReservationsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.listReservationsSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .listReservationsSettings()
          .setRetrySettings(listReservationsRetrySettings);

      RetrySettings getReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.getReservationSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder.getReservationSettings().setRetrySettings(getReservationRetrySettings);

      RetrySettings deleteReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.deleteReservationSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .deleteReservationSettings()
          .setRetrySettings(deleteReservationRetrySettings);

      RetrySettings updateReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateReservationSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .updateReservationSettings()
          .setRetrySettings(updateReservationRetrySettings);

      RetrySettings failoverReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.failoverReservationSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .failoverReservationSettings()
          .setRetrySettings(failoverReservationRetrySettings);

      RetrySettings createCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.createCapacityCommitmentSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .createCapacityCommitmentSettings()
          .setRetrySettings(createCapacityCommitmentRetrySettings);

      RetrySettings listCapacityCommitmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.listCapacityCommitmentsSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .listCapacityCommitmentsSettings()
          .setRetrySettings(listCapacityCommitmentsRetrySettings);

      RetrySettings getCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.getCapacityCommitmentSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .getCapacityCommitmentSettings()
          .setRetrySettings(getCapacityCommitmentRetrySettings);

      RetrySettings deleteCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.deleteCapacityCommitmentSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .deleteCapacityCommitmentSettings()
          .setRetrySettings(deleteCapacityCommitmentRetrySettings);

      RetrySettings updateCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateCapacityCommitmentSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .updateCapacityCommitmentSettings()
          .setRetrySettings(updateCapacityCommitmentRetrySettings);

      RetrySettings splitCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.splitCapacityCommitmentSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .splitCapacityCommitmentSettings()
          .setRetrySettings(splitCapacityCommitmentRetrySettings);

      RetrySettings mergeCapacityCommitmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.mergeCapacityCommitmentsSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .mergeCapacityCommitmentsSettings()
          .setRetrySettings(mergeCapacityCommitmentsRetrySettings);

      RetrySettings createAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.createAssignmentSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .createAssignmentSettings()
          .setRetrySettings(createAssignmentRetrySettings);

      RetrySettings listAssignmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.listAssignmentsSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .listAssignmentsSettings()
          .setRetrySettings(listAssignmentsRetrySettings);

      RetrySettings deleteAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.deleteAssignmentSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .deleteAssignmentSettings()
          .setRetrySettings(deleteAssignmentRetrySettings);

      RetrySettings searchAssignmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.searchAssignmentsSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .searchAssignmentsSettings()
          .setRetrySettings(searchAssignmentsRetrySettings);

      RetrySettings searchAllAssignmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.searchAllAssignmentsSettings().getRetrySettings(),
              serviceRetry);
      clientSettingsBuilder
          .searchAllAssignmentsSettings()
          .setRetrySettings(searchAllAssignmentsRetrySettings);

      RetrySettings moveAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.moveAssignmentSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder.moveAssignmentSettings().setRetrySettings(moveAssignmentRetrySettings);

      RetrySettings updateAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateAssignmentSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .updateAssignmentSettings()
          .setRetrySettings(updateAssignmentRetrySettings);

      RetrySettings getBiReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.getBiReservationSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .getBiReservationSettings()
          .setRetrySettings(getBiReservationRetrySettings);

      RetrySettings updateBiReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateBiReservationSettings().getRetrySettings(), serviceRetry);
      clientSettingsBuilder
          .updateBiReservationSettings()
          .setRetrySettings(updateBiReservationRetrySettings);

      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace("Configured service-level retry settings from properties.");
      }
    }
    Retry createReservationRetry = clientProperties.getCreateReservationRetry();
    if (createReservationRetry != null) {
      RetrySettings createReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.createReservationSettings().getRetrySettings(),
              createReservationRetry);
      clientSettingsBuilder
          .createReservationSettings()
          .setRetrySettings(createReservationRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for createReservation from properties.");
      }
    }
    Retry listReservationsRetry = clientProperties.getListReservationsRetry();
    if (listReservationsRetry != null) {
      RetrySettings listReservationsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.listReservationsSettings().getRetrySettings(),
              listReservationsRetry);
      clientSettingsBuilder
          .listReservationsSettings()
          .setRetrySettings(listReservationsRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for listReservations from properties.");
      }
    }
    Retry getReservationRetry = clientProperties.getGetReservationRetry();
    if (getReservationRetry != null) {
      RetrySettings getReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.getReservationSettings().getRetrySettings(),
              getReservationRetry);
      clientSettingsBuilder.getReservationSettings().setRetrySettings(getReservationRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace("Configured method-level retry settings for getReservation from properties.");
      }
    }
    Retry deleteReservationRetry = clientProperties.getDeleteReservationRetry();
    if (deleteReservationRetry != null) {
      RetrySettings deleteReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.deleteReservationSettings().getRetrySettings(),
              deleteReservationRetry);
      clientSettingsBuilder
          .deleteReservationSettings()
          .setRetrySettings(deleteReservationRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for deleteReservation from properties.");
      }
    }
    Retry updateReservationRetry = clientProperties.getUpdateReservationRetry();
    if (updateReservationRetry != null) {
      RetrySettings updateReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateReservationSettings().getRetrySettings(),
              updateReservationRetry);
      clientSettingsBuilder
          .updateReservationSettings()
          .setRetrySettings(updateReservationRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for updateReservation from properties.");
      }
    }
    Retry failoverReservationRetry = clientProperties.getFailoverReservationRetry();
    if (failoverReservationRetry != null) {
      RetrySettings failoverReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.failoverReservationSettings().getRetrySettings(),
              failoverReservationRetry);
      clientSettingsBuilder
          .failoverReservationSettings()
          .setRetrySettings(failoverReservationRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for failoverReservation from properties.");
      }
    }
    Retry createCapacityCommitmentRetry = clientProperties.getCreateCapacityCommitmentRetry();
    if (createCapacityCommitmentRetry != null) {
      RetrySettings createCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.createCapacityCommitmentSettings().getRetrySettings(),
              createCapacityCommitmentRetry);
      clientSettingsBuilder
          .createCapacityCommitmentSettings()
          .setRetrySettings(createCapacityCommitmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for createCapacityCommitment from properties.");
      }
    }
    Retry listCapacityCommitmentsRetry = clientProperties.getListCapacityCommitmentsRetry();
    if (listCapacityCommitmentsRetry != null) {
      RetrySettings listCapacityCommitmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.listCapacityCommitmentsSettings().getRetrySettings(),
              listCapacityCommitmentsRetry);
      clientSettingsBuilder
          .listCapacityCommitmentsSettings()
          .setRetrySettings(listCapacityCommitmentsRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for listCapacityCommitments from properties.");
      }
    }
    Retry getCapacityCommitmentRetry = clientProperties.getGetCapacityCommitmentRetry();
    if (getCapacityCommitmentRetry != null) {
      RetrySettings getCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.getCapacityCommitmentSettings().getRetrySettings(),
              getCapacityCommitmentRetry);
      clientSettingsBuilder
          .getCapacityCommitmentSettings()
          .setRetrySettings(getCapacityCommitmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for getCapacityCommitment from properties.");
      }
    }
    Retry deleteCapacityCommitmentRetry = clientProperties.getDeleteCapacityCommitmentRetry();
    if (deleteCapacityCommitmentRetry != null) {
      RetrySettings deleteCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.deleteCapacityCommitmentSettings().getRetrySettings(),
              deleteCapacityCommitmentRetry);
      clientSettingsBuilder
          .deleteCapacityCommitmentSettings()
          .setRetrySettings(deleteCapacityCommitmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for deleteCapacityCommitment from properties.");
      }
    }
    Retry updateCapacityCommitmentRetry = clientProperties.getUpdateCapacityCommitmentRetry();
    if (updateCapacityCommitmentRetry != null) {
      RetrySettings updateCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateCapacityCommitmentSettings().getRetrySettings(),
              updateCapacityCommitmentRetry);
      clientSettingsBuilder
          .updateCapacityCommitmentSettings()
          .setRetrySettings(updateCapacityCommitmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for updateCapacityCommitment from properties.");
      }
    }
    Retry splitCapacityCommitmentRetry = clientProperties.getSplitCapacityCommitmentRetry();
    if (splitCapacityCommitmentRetry != null) {
      RetrySettings splitCapacityCommitmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.splitCapacityCommitmentSettings().getRetrySettings(),
              splitCapacityCommitmentRetry);
      clientSettingsBuilder
          .splitCapacityCommitmentSettings()
          .setRetrySettings(splitCapacityCommitmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for splitCapacityCommitment from properties.");
      }
    }
    Retry mergeCapacityCommitmentsRetry = clientProperties.getMergeCapacityCommitmentsRetry();
    if (mergeCapacityCommitmentsRetry != null) {
      RetrySettings mergeCapacityCommitmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.mergeCapacityCommitmentsSettings().getRetrySettings(),
              mergeCapacityCommitmentsRetry);
      clientSettingsBuilder
          .mergeCapacityCommitmentsSettings()
          .setRetrySettings(mergeCapacityCommitmentsRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for mergeCapacityCommitments from properties.");
      }
    }
    Retry createAssignmentRetry = clientProperties.getCreateAssignmentRetry();
    if (createAssignmentRetry != null) {
      RetrySettings createAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.createAssignmentSettings().getRetrySettings(),
              createAssignmentRetry);
      clientSettingsBuilder
          .createAssignmentSettings()
          .setRetrySettings(createAssignmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for createAssignment from properties.");
      }
    }
    Retry listAssignmentsRetry = clientProperties.getListAssignmentsRetry();
    if (listAssignmentsRetry != null) {
      RetrySettings listAssignmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.listAssignmentsSettings().getRetrySettings(),
              listAssignmentsRetry);
      clientSettingsBuilder
          .listAssignmentsSettings()
          .setRetrySettings(listAssignmentsRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace("Configured method-level retry settings for listAssignments from properties.");
      }
    }
    Retry deleteAssignmentRetry = clientProperties.getDeleteAssignmentRetry();
    if (deleteAssignmentRetry != null) {
      RetrySettings deleteAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.deleteAssignmentSettings().getRetrySettings(),
              deleteAssignmentRetry);
      clientSettingsBuilder
          .deleteAssignmentSettings()
          .setRetrySettings(deleteAssignmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for deleteAssignment from properties.");
      }
    }
    Retry searchAssignmentsRetry = clientProperties.getSearchAssignmentsRetry();
    if (searchAssignmentsRetry != null) {
      RetrySettings searchAssignmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.searchAssignmentsSettings().getRetrySettings(),
              searchAssignmentsRetry);
      clientSettingsBuilder
          .searchAssignmentsSettings()
          .setRetrySettings(searchAssignmentsRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for searchAssignments from properties.");
      }
    }
    Retry searchAllAssignmentsRetry = clientProperties.getSearchAllAssignmentsRetry();
    if (searchAllAssignmentsRetry != null) {
      RetrySettings searchAllAssignmentsRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.searchAllAssignmentsSettings().getRetrySettings(),
              searchAllAssignmentsRetry);
      clientSettingsBuilder
          .searchAllAssignmentsSettings()
          .setRetrySettings(searchAllAssignmentsRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for searchAllAssignments from properties.");
      }
    }
    Retry moveAssignmentRetry = clientProperties.getMoveAssignmentRetry();
    if (moveAssignmentRetry != null) {
      RetrySettings moveAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.moveAssignmentSettings().getRetrySettings(),
              moveAssignmentRetry);
      clientSettingsBuilder.moveAssignmentSettings().setRetrySettings(moveAssignmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace("Configured method-level retry settings for moveAssignment from properties.");
      }
    }
    Retry updateAssignmentRetry = clientProperties.getUpdateAssignmentRetry();
    if (updateAssignmentRetry != null) {
      RetrySettings updateAssignmentRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateAssignmentSettings().getRetrySettings(),
              updateAssignmentRetry);
      clientSettingsBuilder
          .updateAssignmentSettings()
          .setRetrySettings(updateAssignmentRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for updateAssignment from properties.");
      }
    }
    Retry getBiReservationRetry = clientProperties.getGetBiReservationRetry();
    if (getBiReservationRetry != null) {
      RetrySettings getBiReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.getBiReservationSettings().getRetrySettings(),
              getBiReservationRetry);
      clientSettingsBuilder
          .getBiReservationSettings()
          .setRetrySettings(getBiReservationRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for getBiReservation from properties.");
      }
    }
    Retry updateBiReservationRetry = clientProperties.getUpdateBiReservationRetry();
    if (updateBiReservationRetry != null) {
      RetrySettings updateBiReservationRetrySettings =
          RetryUtil.updateRetrySettings(
              clientSettingsBuilder.updateBiReservationSettings().getRetrySettings(),
              updateBiReservationRetry);
      clientSettingsBuilder
          .updateBiReservationSettings()
          .setRetrySettings(updateBiReservationRetrySettings);
      if (LOGGER.isTraceEnabled()) {
        LOGGER.trace(
            "Configured method-level retry settings for updateBiReservation from properties.");
      }
    }
    return clientSettingsBuilder.build();
  }