All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.cloud.translate.v3beta1.stub.HttpJsonTranslationServiceStub Maven / Gradle / Ivy

There is a newer version: 2.54.0
Show newest version
/*
 * Copyright 2024 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.google.cloud.translate.v3beta1.stub;

import static com.google.cloud.translate.v3beta1.TranslationServiceClient.ListGlossariesPagedResponse;

import com.google.api.HttpRule;
import com.google.api.core.BetaApi;
import com.google.api.core.InternalApi;
import com.google.api.gax.core.BackgroundResource;
import com.google.api.gax.core.BackgroundResourceAggregation;
import com.google.api.gax.httpjson.ApiMethodDescriptor;
import com.google.api.gax.httpjson.HttpJsonCallSettings;
import com.google.api.gax.httpjson.HttpJsonOperationSnapshot;
import com.google.api.gax.httpjson.HttpJsonStubCallableFactory;
import com.google.api.gax.httpjson.ProtoMessageRequestFormatter;
import com.google.api.gax.httpjson.ProtoMessageResponseParser;
import com.google.api.gax.httpjson.ProtoRestSerializer;
import com.google.api.gax.httpjson.longrunning.stub.HttpJsonOperationsStub;
import com.google.api.gax.rpc.ClientContext;
import com.google.api.gax.rpc.OperationCallable;
import com.google.api.gax.rpc.RequestParamsBuilder;
import com.google.api.gax.rpc.UnaryCallable;
import com.google.cloud.translate.v3beta1.BatchTranslateDocumentMetadata;
import com.google.cloud.translate.v3beta1.BatchTranslateDocumentRequest;
import com.google.cloud.translate.v3beta1.BatchTranslateDocumentResponse;
import com.google.cloud.translate.v3beta1.BatchTranslateMetadata;
import com.google.cloud.translate.v3beta1.BatchTranslateResponse;
import com.google.cloud.translate.v3beta1.BatchTranslateTextRequest;
import com.google.cloud.translate.v3beta1.CreateGlossaryMetadata;
import com.google.cloud.translate.v3beta1.CreateGlossaryRequest;
import com.google.cloud.translate.v3beta1.DeleteGlossaryMetadata;
import com.google.cloud.translate.v3beta1.DeleteGlossaryRequest;
import com.google.cloud.translate.v3beta1.DeleteGlossaryResponse;
import com.google.cloud.translate.v3beta1.DetectLanguageRequest;
import com.google.cloud.translate.v3beta1.DetectLanguageResponse;
import com.google.cloud.translate.v3beta1.GetGlossaryRequest;
import com.google.cloud.translate.v3beta1.GetSupportedLanguagesRequest;
import com.google.cloud.translate.v3beta1.Glossary;
import com.google.cloud.translate.v3beta1.ListGlossariesRequest;
import com.google.cloud.translate.v3beta1.ListGlossariesResponse;
import com.google.cloud.translate.v3beta1.SupportedLanguages;
import com.google.cloud.translate.v3beta1.TranslateDocumentRequest;
import com.google.cloud.translate.v3beta1.TranslateDocumentResponse;
import com.google.cloud.translate.v3beta1.TranslateTextRequest;
import com.google.cloud.translate.v3beta1.TranslateTextResponse;
import com.google.common.collect.ImmutableMap;
import com.google.longrunning.Operation;
import com.google.protobuf.TypeRegistry;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import javax.annotation.Generated;

// AUTO-GENERATED DOCUMENTATION AND CLASS.
/**
 * REST stub implementation for the TranslationService service API.
 *
 * 

This class is for advanced usage and reflects the underlying API directly. */ @BetaApi @Generated("by gapic-generator-java") public class HttpJsonTranslationServiceStub extends TranslationServiceStub { private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder() .add(BatchTranslateDocumentResponse.getDescriptor()) .add(Glossary.getDescriptor()) .add(DeleteGlossaryMetadata.getDescriptor()) .add(CreateGlossaryMetadata.getDescriptor()) .add(BatchTranslateMetadata.getDescriptor()) .add(BatchTranslateDocumentMetadata.getDescriptor()) .add(DeleteGlossaryResponse.getDescriptor()) .add(BatchTranslateResponse.getDescriptor()) .build(); private static final ApiMethodDescriptor translateTextMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/TranslateText") .setHttpMethod("POST") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}:translateText", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setAdditionalPaths("/v3beta1/{parent=projects/*}:translateText") .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor( request -> ProtoRestSerializer.create() .toBody("*", request.toBuilder().clearParent().build(), true)) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(TranslateTextResponse.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .build(); private static final ApiMethodDescriptor detectLanguageMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/DetectLanguage") .setHttpMethod("POST") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}:detectLanguage", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setAdditionalPaths("/v3beta1/{parent=projects/*}:detectLanguage") .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor( request -> ProtoRestSerializer.create() .toBody("*", request.toBuilder().clearParent().build(), true)) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(DetectLanguageResponse.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .build(); private static final ApiMethodDescriptor getSupportedLanguagesMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/GetSupportedLanguages") .setHttpMethod("GET") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}/supportedLanguages", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setAdditionalPaths("/v3beta1/{parent=projects/*}/supportedLanguages") .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam( fields, "displayLanguageCode", request.getDisplayLanguageCode()); serializer.putQueryParam(fields, "model", request.getModel()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor(request -> null) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(SupportedLanguages.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .build(); private static final ApiMethodDescriptor translateDocumentMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/TranslateDocument") .setHttpMethod("POST") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}:translateDocument", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor( request -> ProtoRestSerializer.create() .toBody("*", request.toBuilder().clearParent().build(), true)) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(TranslateDocumentResponse.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .build(); private static final ApiMethodDescriptor batchTranslateTextMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/BatchTranslateText") .setHttpMethod("POST") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}:batchTranslateText", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor( request -> ProtoRestSerializer.create() .toBody("*", request.toBuilder().clearParent().build(), true)) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(Operation.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .setOperationSnapshotFactory( (BatchTranslateTextRequest request, Operation response) -> HttpJsonOperationSnapshot.create(response)) .build(); private static final ApiMethodDescriptor batchTranslateDocumentMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/BatchTranslateDocument") .setHttpMethod("POST") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}:batchTranslateDocument", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor( request -> ProtoRestSerializer.create() .toBody("*", request.toBuilder().clearParent().build(), true)) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(Operation.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .setOperationSnapshotFactory( (BatchTranslateDocumentRequest request, Operation response) -> HttpJsonOperationSnapshot.create(response)) .build(); private static final ApiMethodDescriptor createGlossaryMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/CreateGlossary") .setHttpMethod("POST") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}/glossaries", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor( request -> ProtoRestSerializer.create() .toBody("glossary", request.getGlossary(), true)) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(Operation.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .setOperationSnapshotFactory( (CreateGlossaryRequest request, Operation response) -> HttpJsonOperationSnapshot.create(response)) .build(); private static final ApiMethodDescriptor listGlossariesMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/ListGlossaries") .setHttpMethod("GET") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{parent=projects/*/locations/*}/glossaries", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "parent", request.getParent()); return fields; }) .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "filter", request.getFilter()); serializer.putQueryParam(fields, "pageSize", request.getPageSize()); serializer.putQueryParam(fields, "pageToken", request.getPageToken()); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor(request -> null) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(ListGlossariesResponse.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .build(); private static final ApiMethodDescriptor getGlossaryMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName("google.cloud.translation.v3beta1.TranslationService/GetGlossary") .setHttpMethod("GET") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{name=projects/*/locations/*/glossaries/*}", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "name", request.getName()); return fields; }) .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor(request -> null) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(Glossary.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .build(); private static final ApiMethodDescriptor deleteGlossaryMethodDescriptor = ApiMethodDescriptor.newBuilder() .setFullMethodName( "google.cloud.translation.v3beta1.TranslationService/DeleteGlossary") .setHttpMethod("DELETE") .setType(ApiMethodDescriptor.MethodType.UNARY) .setRequestFormatter( ProtoMessageRequestFormatter.newBuilder() .setPath( "/v3beta1/{name=projects/*/locations/*/glossaries/*}", request -> { Map fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putPathParam(fields, "name", request.getName()); return fields; }) .setQueryParamsExtractor( request -> { Map> fields = new HashMap<>(); ProtoRestSerializer serializer = ProtoRestSerializer.create(); serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int"); return fields; }) .setRequestBodyExtractor(request -> null) .build()) .setResponseParser( ProtoMessageResponseParser.newBuilder() .setDefaultInstance(Operation.getDefaultInstance()) .setDefaultTypeRegistry(typeRegistry) .build()) .setOperationSnapshotFactory( (DeleteGlossaryRequest request, Operation response) -> HttpJsonOperationSnapshot.create(response)) .build(); private final UnaryCallable translateTextCallable; private final UnaryCallable detectLanguageCallable; private final UnaryCallable getSupportedLanguagesCallable; private final UnaryCallable translateDocumentCallable; private final UnaryCallable batchTranslateTextCallable; private final OperationCallable< BatchTranslateTextRequest, BatchTranslateResponse, BatchTranslateMetadata> batchTranslateTextOperationCallable; private final UnaryCallable batchTranslateDocumentCallable; private final OperationCallable< BatchTranslateDocumentRequest, BatchTranslateDocumentResponse, BatchTranslateDocumentMetadata> batchTranslateDocumentOperationCallable; private final UnaryCallable createGlossaryCallable; private final OperationCallable createGlossaryOperationCallable; private final UnaryCallable listGlossariesCallable; private final UnaryCallable listGlossariesPagedCallable; private final UnaryCallable getGlossaryCallable; private final UnaryCallable deleteGlossaryCallable; private final OperationCallable< DeleteGlossaryRequest, DeleteGlossaryResponse, DeleteGlossaryMetadata> deleteGlossaryOperationCallable; private final BackgroundResource backgroundResources; private final HttpJsonOperationsStub httpJsonOperationsStub; private final HttpJsonStubCallableFactory callableFactory; public static final HttpJsonTranslationServiceStub create(TranslationServiceStubSettings settings) throws IOException { return new HttpJsonTranslationServiceStub(settings, ClientContext.create(settings)); } public static final HttpJsonTranslationServiceStub create(ClientContext clientContext) throws IOException { return new HttpJsonTranslationServiceStub( TranslationServiceStubSettings.newHttpJsonBuilder().build(), clientContext); } public static final HttpJsonTranslationServiceStub create( ClientContext clientContext, HttpJsonStubCallableFactory callableFactory) throws IOException { return new HttpJsonTranslationServiceStub( TranslationServiceStubSettings.newHttpJsonBuilder().build(), clientContext, callableFactory); } /** * Constructs an instance of HttpJsonTranslationServiceStub, using the given settings. This is * protected so that it is easy to make a subclass, but otherwise, the static factory methods * should be preferred. */ protected HttpJsonTranslationServiceStub( TranslationServiceStubSettings settings, ClientContext clientContext) throws IOException { this(settings, clientContext, new HttpJsonTranslationServiceCallableFactory()); } /** * Constructs an instance of HttpJsonTranslationServiceStub, using the given settings. This is * protected so that it is easy to make a subclass, but otherwise, the static factory methods * should be preferred. */ protected HttpJsonTranslationServiceStub( TranslationServiceStubSettings settings, ClientContext clientContext, HttpJsonStubCallableFactory callableFactory) throws IOException { this.callableFactory = callableFactory; this.httpJsonOperationsStub = HttpJsonOperationsStub.create( clientContext, callableFactory, typeRegistry, ImmutableMap.builder() .put( "google.longrunning.Operations.CancelOperation", HttpRule.newBuilder() .setPost("/v3beta1/{name=projects/*/locations/*/operations/*}:cancel") .build()) .put( "google.longrunning.Operations.DeleteOperation", HttpRule.newBuilder() .setDelete("/v3beta1/{name=projects/*/locations/*/operations/*}") .build()) .put( "google.longrunning.Operations.GetOperation", HttpRule.newBuilder() .setGet("/v3beta1/{name=projects/*/locations/*/operations/*}") .build()) .put( "google.longrunning.Operations.ListOperations", HttpRule.newBuilder() .setGet("/v3beta1/{name=projects/*/locations/*}/operations") .build()) .put( "google.longrunning.Operations.WaitOperation", HttpRule.newBuilder() .setPost("/v3beta1/{name=projects/*/locations/*/operations/*}:wait") .build()) .build()); HttpJsonCallSettings translateTextTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(translateTextMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings detectLanguageTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(detectLanguageMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings getSupportedLanguagesTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(getSupportedLanguagesMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings translateDocumentTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(translateDocumentMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings batchTranslateTextTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(batchTranslateTextMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings batchTranslateDocumentTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(batchTranslateDocumentMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings createGlossaryTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(createGlossaryMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings listGlossariesTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(listGlossariesMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("parent", String.valueOf(request.getParent())); return builder.build(); }) .build(); HttpJsonCallSettings getGlossaryTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(getGlossaryMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("name", String.valueOf(request.getName())); return builder.build(); }) .build(); HttpJsonCallSettings deleteGlossaryTransportSettings = HttpJsonCallSettings.newBuilder() .setMethodDescriptor(deleteGlossaryMethodDescriptor) .setTypeRegistry(typeRegistry) .setParamsExtractor( request -> { RequestParamsBuilder builder = RequestParamsBuilder.create(); builder.add("name", String.valueOf(request.getName())); return builder.build(); }) .build(); this.translateTextCallable = callableFactory.createUnaryCallable( translateTextTransportSettings, settings.translateTextSettings(), clientContext); this.detectLanguageCallable = callableFactory.createUnaryCallable( detectLanguageTransportSettings, settings.detectLanguageSettings(), clientContext); this.getSupportedLanguagesCallable = callableFactory.createUnaryCallable( getSupportedLanguagesTransportSettings, settings.getSupportedLanguagesSettings(), clientContext); this.translateDocumentCallable = callableFactory.createUnaryCallable( translateDocumentTransportSettings, settings.translateDocumentSettings(), clientContext); this.batchTranslateTextCallable = callableFactory.createUnaryCallable( batchTranslateTextTransportSettings, settings.batchTranslateTextSettings(), clientContext); this.batchTranslateTextOperationCallable = callableFactory.createOperationCallable( batchTranslateTextTransportSettings, settings.batchTranslateTextOperationSettings(), clientContext, httpJsonOperationsStub); this.batchTranslateDocumentCallable = callableFactory.createUnaryCallable( batchTranslateDocumentTransportSettings, settings.batchTranslateDocumentSettings(), clientContext); this.batchTranslateDocumentOperationCallable = callableFactory.createOperationCallable( batchTranslateDocumentTransportSettings, settings.batchTranslateDocumentOperationSettings(), clientContext, httpJsonOperationsStub); this.createGlossaryCallable = callableFactory.createUnaryCallable( createGlossaryTransportSettings, settings.createGlossarySettings(), clientContext); this.createGlossaryOperationCallable = callableFactory.createOperationCallable( createGlossaryTransportSettings, settings.createGlossaryOperationSettings(), clientContext, httpJsonOperationsStub); this.listGlossariesCallable = callableFactory.createUnaryCallable( listGlossariesTransportSettings, settings.listGlossariesSettings(), clientContext); this.listGlossariesPagedCallable = callableFactory.createPagedCallable( listGlossariesTransportSettings, settings.listGlossariesSettings(), clientContext); this.getGlossaryCallable = callableFactory.createUnaryCallable( getGlossaryTransportSettings, settings.getGlossarySettings(), clientContext); this.deleteGlossaryCallable = callableFactory.createUnaryCallable( deleteGlossaryTransportSettings, settings.deleteGlossarySettings(), clientContext); this.deleteGlossaryOperationCallable = callableFactory.createOperationCallable( deleteGlossaryTransportSettings, settings.deleteGlossaryOperationSettings(), clientContext, httpJsonOperationsStub); this.backgroundResources = new BackgroundResourceAggregation(clientContext.getBackgroundResources()); } @InternalApi public static List getMethodDescriptors() { List methodDescriptors = new ArrayList<>(); methodDescriptors.add(translateTextMethodDescriptor); methodDescriptors.add(detectLanguageMethodDescriptor); methodDescriptors.add(getSupportedLanguagesMethodDescriptor); methodDescriptors.add(translateDocumentMethodDescriptor); methodDescriptors.add(batchTranslateTextMethodDescriptor); methodDescriptors.add(batchTranslateDocumentMethodDescriptor); methodDescriptors.add(createGlossaryMethodDescriptor); methodDescriptors.add(listGlossariesMethodDescriptor); methodDescriptors.add(getGlossaryMethodDescriptor); methodDescriptors.add(deleteGlossaryMethodDescriptor); return methodDescriptors; } public HttpJsonOperationsStub getHttpJsonOperationsStub() { return httpJsonOperationsStub; } @Override public UnaryCallable translateTextCallable() { return translateTextCallable; } @Override public UnaryCallable detectLanguageCallable() { return detectLanguageCallable; } @Override public UnaryCallable getSupportedLanguagesCallable() { return getSupportedLanguagesCallable; } @Override public UnaryCallable translateDocumentCallable() { return translateDocumentCallable; } @Override public UnaryCallable batchTranslateTextCallable() { return batchTranslateTextCallable; } @Override public OperationCallable< BatchTranslateTextRequest, BatchTranslateResponse, BatchTranslateMetadata> batchTranslateTextOperationCallable() { return batchTranslateTextOperationCallable; } @Override public UnaryCallable batchTranslateDocumentCallable() { return batchTranslateDocumentCallable; } @Override public OperationCallable< BatchTranslateDocumentRequest, BatchTranslateDocumentResponse, BatchTranslateDocumentMetadata> batchTranslateDocumentOperationCallable() { return batchTranslateDocumentOperationCallable; } @Override public UnaryCallable createGlossaryCallable() { return createGlossaryCallable; } @Override public OperationCallable createGlossaryOperationCallable() { return createGlossaryOperationCallable; } @Override public UnaryCallable listGlossariesCallable() { return listGlossariesCallable; } @Override public UnaryCallable listGlossariesPagedCallable() { return listGlossariesPagedCallable; } @Override public UnaryCallable getGlossaryCallable() { return getGlossaryCallable; } @Override public UnaryCallable deleteGlossaryCallable() { return deleteGlossaryCallable; } @Override public OperationCallable deleteGlossaryOperationCallable() { return deleteGlossaryOperationCallable; } @Override public final void close() { try { backgroundResources.close(); } catch (RuntimeException e) { throw e; } catch (Exception e) { throw new IllegalStateException("Failed to close resource", e); } } @Override public void shutdown() { backgroundResources.shutdown(); } @Override public boolean isShutdown() { return backgroundResources.isShutdown(); } @Override public boolean isTerminated() { return backgroundResources.isTerminated(); } @Override public void shutdownNow() { backgroundResources.shutdownNow(); } @Override public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException { return backgroundResources.awaitTermination(duration, unit); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy