com.google.cloud.translate.v3beta1.stub.GrpcTranslationServiceStub Maven / Gradle / Ivy
Show all versions of google-cloud-translate Show documentation
/*
* 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.core.BetaApi;
import com.google.api.gax.core.BackgroundResource;
import com.google.api.gax.core.BackgroundResourceAggregation;
import com.google.api.gax.grpc.GrpcCallSettings;
import com.google.api.gax.grpc.GrpcStubCallableFactory;
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.longrunning.Operation;
import com.google.longrunning.stub.GrpcOperationsStub;
import io.grpc.MethodDescriptor;
import io.grpc.protobuf.ProtoUtils;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
import javax.annotation.Generated;
// AUTO-GENERATED DOCUMENTATION AND CLASS.
/**
* gRPC 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 GrpcTranslationServiceStub extends TranslationServiceStub {
private static final MethodDescriptor
translateTextMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/TranslateText")
.setRequestMarshaller(
ProtoUtils.marshaller(TranslateTextRequest.getDefaultInstance()))
.setResponseMarshaller(
ProtoUtils.marshaller(TranslateTextResponse.getDefaultInstance()))
.build();
private static final MethodDescriptor
detectLanguageMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/DetectLanguage")
.setRequestMarshaller(
ProtoUtils.marshaller(DetectLanguageRequest.getDefaultInstance()))
.setResponseMarshaller(
ProtoUtils.marshaller(DetectLanguageResponse.getDefaultInstance()))
.build();
private static final MethodDescriptor
getSupportedLanguagesMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/GetSupportedLanguages")
.setRequestMarshaller(
ProtoUtils.marshaller(GetSupportedLanguagesRequest.getDefaultInstance()))
.setResponseMarshaller(ProtoUtils.marshaller(SupportedLanguages.getDefaultInstance()))
.build();
private static final MethodDescriptor
translateDocumentMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/TranslateDocument")
.setRequestMarshaller(
ProtoUtils.marshaller(TranslateDocumentRequest.getDefaultInstance()))
.setResponseMarshaller(
ProtoUtils.marshaller(TranslateDocumentResponse.getDefaultInstance()))
.build();
private static final MethodDescriptor
batchTranslateTextMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/BatchTranslateText")
.setRequestMarshaller(
ProtoUtils.marshaller(BatchTranslateTextRequest.getDefaultInstance()))
.setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
.build();
private static final MethodDescriptor
batchTranslateDocumentMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/BatchTranslateDocument")
.setRequestMarshaller(
ProtoUtils.marshaller(BatchTranslateDocumentRequest.getDefaultInstance()))
.setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
.build();
private static final MethodDescriptor
createGlossaryMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/CreateGlossary")
.setRequestMarshaller(
ProtoUtils.marshaller(CreateGlossaryRequest.getDefaultInstance()))
.setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
.build();
private static final MethodDescriptor
listGlossariesMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/ListGlossaries")
.setRequestMarshaller(
ProtoUtils.marshaller(ListGlossariesRequest.getDefaultInstance()))
.setResponseMarshaller(
ProtoUtils.marshaller(ListGlossariesResponse.getDefaultInstance()))
.build();
private static final MethodDescriptor getGlossaryMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName("google.cloud.translation.v3beta1.TranslationService/GetGlossary")
.setRequestMarshaller(ProtoUtils.marshaller(GetGlossaryRequest.getDefaultInstance()))
.setResponseMarshaller(ProtoUtils.marshaller(Glossary.getDefaultInstance()))
.build();
private static final MethodDescriptor
deleteGlossaryMethodDescriptor =
MethodDescriptor.newBuilder()
.setType(MethodDescriptor.MethodType.UNARY)
.setFullMethodName(
"google.cloud.translation.v3beta1.TranslationService/DeleteGlossary")
.setRequestMarshaller(
ProtoUtils.marshaller(DeleteGlossaryRequest.getDefaultInstance()))
.setResponseMarshaller(ProtoUtils.marshaller(Operation.getDefaultInstance()))
.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 GrpcOperationsStub operationsStub;
private final GrpcStubCallableFactory callableFactory;
public static final GrpcTranslationServiceStub create(TranslationServiceStubSettings settings)
throws IOException {
return new GrpcTranslationServiceStub(settings, ClientContext.create(settings));
}
public static final GrpcTranslationServiceStub create(ClientContext clientContext)
throws IOException {
return new GrpcTranslationServiceStub(
TranslationServiceStubSettings.newBuilder().build(), clientContext);
}
public static final GrpcTranslationServiceStub create(
ClientContext clientContext, GrpcStubCallableFactory callableFactory) throws IOException {
return new GrpcTranslationServiceStub(
TranslationServiceStubSettings.newBuilder().build(), clientContext, callableFactory);
}
/**
* Constructs an instance of GrpcTranslationServiceStub, 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 GrpcTranslationServiceStub(
TranslationServiceStubSettings settings, ClientContext clientContext) throws IOException {
this(settings, clientContext, new GrpcTranslationServiceCallableFactory());
}
/**
* Constructs an instance of GrpcTranslationServiceStub, 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 GrpcTranslationServiceStub(
TranslationServiceStubSettings settings,
ClientContext clientContext,
GrpcStubCallableFactory callableFactory)
throws IOException {
this.callableFactory = callableFactory;
this.operationsStub = GrpcOperationsStub.create(clientContext, callableFactory);
GrpcCallSettings translateTextTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(translateTextMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings
detectLanguageTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(detectLanguageMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings
getSupportedLanguagesTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(getSupportedLanguagesMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings
translateDocumentTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(translateDocumentMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings batchTranslateTextTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(batchTranslateTextMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings
batchTranslateDocumentTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(batchTranslateDocumentMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings createGlossaryTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(createGlossaryMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings
listGlossariesTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(listGlossariesMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
GrpcCallSettings getGlossaryTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(getGlossaryMethodDescriptor)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("name", String.valueOf(request.getName()));
return builder.build();
})
.build();
GrpcCallSettings deleteGlossaryTransportSettings =
GrpcCallSettings.newBuilder()
.setMethodDescriptor(deleteGlossaryMethodDescriptor)
.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,
operationsStub);
this.batchTranslateDocumentCallable =
callableFactory.createUnaryCallable(
batchTranslateDocumentTransportSettings,
settings.batchTranslateDocumentSettings(),
clientContext);
this.batchTranslateDocumentOperationCallable =
callableFactory.createOperationCallable(
batchTranslateDocumentTransportSettings,
settings.batchTranslateDocumentOperationSettings(),
clientContext,
operationsStub);
this.createGlossaryCallable =
callableFactory.createUnaryCallable(
createGlossaryTransportSettings, settings.createGlossarySettings(), clientContext);
this.createGlossaryOperationCallable =
callableFactory.createOperationCallable(
createGlossaryTransportSettings,
settings.createGlossaryOperationSettings(),
clientContext,
operationsStub);
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,
operationsStub);
this.backgroundResources =
new BackgroundResourceAggregation(clientContext.getBackgroundResources());
}
public GrpcOperationsStub getOperationsStub() {
return operationsStub;
}
@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);
}
}