in spring-cloud-previews/google-cloud-document-ai-spring-starter/src/main/java/com/google/cloud/documentai/v1/spring/DocumentProcessorServiceSpringAutoConfiguration.java [124:412]
public DocumentProcessorServiceSettings documentProcessorServiceSettings(
@Qualifier("defaultDocumentProcessorServiceTransportChannelProvider")
TransportChannelProvider defaultTransportChannelProvider)
throws IOException {
DocumentProcessorServiceSettings.Builder clientSettingsBuilder;
if (this.clientProperties.getUseRest()) {
clientSettingsBuilder = DocumentProcessorServiceSettings.newHttpJsonBuilder();
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Using REST (HTTP/JSON) transport.");
}
} else {
clientSettingsBuilder = DocumentProcessorServiceSettings.newBuilder();
}
clientSettingsBuilder
.setCredentialsProvider(this.credentialsProvider)
.setTransportChannelProvider(defaultTransportChannelProvider)
.setEndpoint(DocumentProcessorServiceSettings.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 =
DocumentProcessorServiceSettings.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 processDocumentRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.processDocumentSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder
.processDocumentSettings()
.setRetrySettings(processDocumentRetrySettings);
RetrySettings fetchProcessorTypesRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.fetchProcessorTypesSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder
.fetchProcessorTypesSettings()
.setRetrySettings(fetchProcessorTypesRetrySettings);
RetrySettings listProcessorTypesRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listProcessorTypesSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder
.listProcessorTypesSettings()
.setRetrySettings(listProcessorTypesRetrySettings);
RetrySettings getProcessorTypeRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getProcessorTypeSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder
.getProcessorTypeSettings()
.setRetrySettings(getProcessorTypeRetrySettings);
RetrySettings listProcessorsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listProcessorsSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder.listProcessorsSettings().setRetrySettings(listProcessorsRetrySettings);
RetrySettings getProcessorRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getProcessorSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder.getProcessorSettings().setRetrySettings(getProcessorRetrySettings);
RetrySettings getProcessorVersionRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getProcessorVersionSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder
.getProcessorVersionSettings()
.setRetrySettings(getProcessorVersionRetrySettings);
RetrySettings listProcessorVersionsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listProcessorVersionsSettings().getRetrySettings(),
serviceRetry);
clientSettingsBuilder
.listProcessorVersionsSettings()
.setRetrySettings(listProcessorVersionsRetrySettings);
RetrySettings createProcessorRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.createProcessorSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder
.createProcessorSettings()
.setRetrySettings(createProcessorRetrySettings);
RetrySettings getEvaluationRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getEvaluationSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder.getEvaluationSettings().setRetrySettings(getEvaluationRetrySettings);
RetrySettings listEvaluationsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listEvaluationsSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder
.listEvaluationsSettings()
.setRetrySettings(listEvaluationsRetrySettings);
RetrySettings listLocationsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listLocationsSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder.listLocationsSettings().setRetrySettings(listLocationsRetrySettings);
RetrySettings getLocationRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getLocationSettings().getRetrySettings(), serviceRetry);
clientSettingsBuilder.getLocationSettings().setRetrySettings(getLocationRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured service-level retry settings from properties.");
}
}
Retry processDocumentRetry = clientProperties.getProcessDocumentRetry();
if (processDocumentRetry != null) {
RetrySettings processDocumentRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.processDocumentSettings().getRetrySettings(),
processDocumentRetry);
clientSettingsBuilder
.processDocumentSettings()
.setRetrySettings(processDocumentRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for processDocument from properties.");
}
}
Retry fetchProcessorTypesRetry = clientProperties.getFetchProcessorTypesRetry();
if (fetchProcessorTypesRetry != null) {
RetrySettings fetchProcessorTypesRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.fetchProcessorTypesSettings().getRetrySettings(),
fetchProcessorTypesRetry);
clientSettingsBuilder
.fetchProcessorTypesSettings()
.setRetrySettings(fetchProcessorTypesRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace(
"Configured method-level retry settings for fetchProcessorTypes from properties.");
}
}
Retry listProcessorTypesRetry = clientProperties.getListProcessorTypesRetry();
if (listProcessorTypesRetry != null) {
RetrySettings listProcessorTypesRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listProcessorTypesSettings().getRetrySettings(),
listProcessorTypesRetry);
clientSettingsBuilder
.listProcessorTypesSettings()
.setRetrySettings(listProcessorTypesRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace(
"Configured method-level retry settings for listProcessorTypes from properties.");
}
}
Retry getProcessorTypeRetry = clientProperties.getGetProcessorTypeRetry();
if (getProcessorTypeRetry != null) {
RetrySettings getProcessorTypeRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getProcessorTypeSettings().getRetrySettings(),
getProcessorTypeRetry);
clientSettingsBuilder
.getProcessorTypeSettings()
.setRetrySettings(getProcessorTypeRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace(
"Configured method-level retry settings for getProcessorType from properties.");
}
}
Retry listProcessorsRetry = clientProperties.getListProcessorsRetry();
if (listProcessorsRetry != null) {
RetrySettings listProcessorsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listProcessorsSettings().getRetrySettings(),
listProcessorsRetry);
clientSettingsBuilder.listProcessorsSettings().setRetrySettings(listProcessorsRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for listProcessors from properties.");
}
}
Retry getProcessorRetry = clientProperties.getGetProcessorRetry();
if (getProcessorRetry != null) {
RetrySettings getProcessorRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getProcessorSettings().getRetrySettings(), getProcessorRetry);
clientSettingsBuilder.getProcessorSettings().setRetrySettings(getProcessorRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for getProcessor from properties.");
}
}
Retry getProcessorVersionRetry = clientProperties.getGetProcessorVersionRetry();
if (getProcessorVersionRetry != null) {
RetrySettings getProcessorVersionRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getProcessorVersionSettings().getRetrySettings(),
getProcessorVersionRetry);
clientSettingsBuilder
.getProcessorVersionSettings()
.setRetrySettings(getProcessorVersionRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace(
"Configured method-level retry settings for getProcessorVersion from properties.");
}
}
Retry listProcessorVersionsRetry = clientProperties.getListProcessorVersionsRetry();
if (listProcessorVersionsRetry != null) {
RetrySettings listProcessorVersionsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listProcessorVersionsSettings().getRetrySettings(),
listProcessorVersionsRetry);
clientSettingsBuilder
.listProcessorVersionsSettings()
.setRetrySettings(listProcessorVersionsRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace(
"Configured method-level retry settings for listProcessorVersions from properties.");
}
}
Retry createProcessorRetry = clientProperties.getCreateProcessorRetry();
if (createProcessorRetry != null) {
RetrySettings createProcessorRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.createProcessorSettings().getRetrySettings(),
createProcessorRetry);
clientSettingsBuilder
.createProcessorSettings()
.setRetrySettings(createProcessorRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for createProcessor from properties.");
}
}
Retry getEvaluationRetry = clientProperties.getGetEvaluationRetry();
if (getEvaluationRetry != null) {
RetrySettings getEvaluationRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getEvaluationSettings().getRetrySettings(), getEvaluationRetry);
clientSettingsBuilder.getEvaluationSettings().setRetrySettings(getEvaluationRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for getEvaluation from properties.");
}
}
Retry listEvaluationsRetry = clientProperties.getListEvaluationsRetry();
if (listEvaluationsRetry != null) {
RetrySettings listEvaluationsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listEvaluationsSettings().getRetrySettings(),
listEvaluationsRetry);
clientSettingsBuilder
.listEvaluationsSettings()
.setRetrySettings(listEvaluationsRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for listEvaluations from properties.");
}
}
Retry listLocationsRetry = clientProperties.getListLocationsRetry();
if (listLocationsRetry != null) {
RetrySettings listLocationsRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.listLocationsSettings().getRetrySettings(), listLocationsRetry);
clientSettingsBuilder.listLocationsSettings().setRetrySettings(listLocationsRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for listLocations from properties.");
}
}
Retry getLocationRetry = clientProperties.getGetLocationRetry();
if (getLocationRetry != null) {
RetrySettings getLocationRetrySettings =
RetryUtil.updateRetrySettings(
clientSettingsBuilder.getLocationSettings().getRetrySettings(), getLocationRetry);
clientSettingsBuilder.getLocationSettings().setRetrySettings(getLocationRetrySettings);
if (LOGGER.isTraceEnabled()) {
LOGGER.trace("Configured method-level retry settings for getLocation from properties.");
}
}
return clientSettingsBuilder.build();
}