
com.google.area120.tables.v1alpha.stub.HttpJsonTablesServiceStub Maven / Gradle / Ivy
Show all versions of google-area120-tables 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.area120.tables.v1alpha.stub;
import static com.google.area120.tables.v1alpha.TablesServiceClient.ListRowsPagedResponse;
import static com.google.area120.tables.v1alpha.TablesServiceClient.ListTablesPagedResponse;
import static com.google.area120.tables.v1alpha.TablesServiceClient.ListWorkspacesPagedResponse;
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.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.rpc.ClientContext;
import com.google.api.gax.rpc.RequestParamsBuilder;
import com.google.api.gax.rpc.UnaryCallable;
import com.google.area120.tables.v1alpha1.BatchCreateRowsRequest;
import com.google.area120.tables.v1alpha1.BatchCreateRowsResponse;
import com.google.area120.tables.v1alpha1.BatchDeleteRowsRequest;
import com.google.area120.tables.v1alpha1.BatchUpdateRowsRequest;
import com.google.area120.tables.v1alpha1.BatchUpdateRowsResponse;
import com.google.area120.tables.v1alpha1.CreateRowRequest;
import com.google.area120.tables.v1alpha1.DeleteRowRequest;
import com.google.area120.tables.v1alpha1.GetRowRequest;
import com.google.area120.tables.v1alpha1.GetTableRequest;
import com.google.area120.tables.v1alpha1.GetWorkspaceRequest;
import com.google.area120.tables.v1alpha1.ListRowsRequest;
import com.google.area120.tables.v1alpha1.ListRowsResponse;
import com.google.area120.tables.v1alpha1.ListTablesRequest;
import com.google.area120.tables.v1alpha1.ListTablesResponse;
import com.google.area120.tables.v1alpha1.ListWorkspacesRequest;
import com.google.area120.tables.v1alpha1.ListWorkspacesResponse;
import com.google.area120.tables.v1alpha1.Row;
import com.google.area120.tables.v1alpha1.Table;
import com.google.area120.tables.v1alpha1.UpdateRowRequest;
import com.google.area120.tables.v1alpha1.Workspace;
import com.google.protobuf.Empty;
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 TablesService service API.
*
* This class is for advanced usage and reflects the underlying API directly.
*/
@BetaApi
@Generated("by gapic-generator-java")
public class HttpJsonTablesServiceStub extends TablesServiceStub {
private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder().build();
private static final ApiMethodDescriptor getTableMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/GetTable")
.setHttpMethod("GET")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{name=tables/*}",
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(Table.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor
listTablesMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/ListTables")
.setHttpMethod("GET")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/tables",
request -> {
Map fields = new HashMap<>();
ProtoRestSerializer serializer =
ProtoRestSerializer.create();
return fields;
})
.setQueryParamsExtractor(
request -> {
Map> fields = new HashMap<>();
ProtoRestSerializer serializer =
ProtoRestSerializer.create();
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(ListTablesResponse.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor
getWorkspaceMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/GetWorkspace")
.setHttpMethod("GET")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{name=workspaces/*}",
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(Workspace.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor
listWorkspacesMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/ListWorkspaces")
.setHttpMethod("GET")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/workspaces",
request -> {
Map fields = new HashMap<>();
ProtoRestSerializer serializer =
ProtoRestSerializer.create();
return fields;
})
.setQueryParamsExtractor(
request -> {
Map> fields = new HashMap<>();
ProtoRestSerializer serializer =
ProtoRestSerializer.create();
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(ListWorkspacesResponse.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor getRowMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/GetRow")
.setHttpMethod("GET")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{name=tables/*/rows/*}",
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, "view", request.getViewValue());
serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int");
return fields;
})
.setRequestBodyExtractor(request -> null)
.build())
.setResponseParser(
ProtoMessageResponseParser.newBuilder()
.setDefaultInstance(Row.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor
listRowsMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/ListRows")
.setHttpMethod("GET")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{parent=tables/*}/rows",
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, "view", request.getViewValue());
serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int");
return fields;
})
.setRequestBodyExtractor(request -> null)
.build())
.setResponseParser(
ProtoMessageResponseParser.newBuilder()
.setDefaultInstance(ListRowsResponse.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor createRowMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/CreateRow")
.setHttpMethod("POST")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{parent=tables/*}/rows",
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, "view", request.getViewValue());
serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int");
return fields;
})
.setRequestBodyExtractor(
request -> ProtoRestSerializer.create().toBody("row", request.getRow(), true))
.build())
.setResponseParser(
ProtoMessageResponseParser.newBuilder()
.setDefaultInstance(Row.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor
batchCreateRowsMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/BatchCreateRows")
.setHttpMethod("POST")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{parent=tables/*}/rows:batchCreate",
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(BatchCreateRowsResponse.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor updateRowMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/UpdateRow")
.setHttpMethod("PATCH")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{row.name=tables/*/rows/*}",
request -> {
Map fields = new HashMap<>();
ProtoRestSerializer serializer =
ProtoRestSerializer.create();
serializer.putPathParam(fields, "row.name", request.getRow().getName());
return fields;
})
.setQueryParamsExtractor(
request -> {
Map> fields = new HashMap<>();
ProtoRestSerializer serializer =
ProtoRestSerializer.create();
serializer.putQueryParam(fields, "updateMask", request.getUpdateMask());
serializer.putQueryParam(fields, "view", request.getViewValue());
serializer.putQueryParam(fields, "$alt", "json;enum-encoding=int");
return fields;
})
.setRequestBodyExtractor(
request -> ProtoRestSerializer.create().toBody("row", request.getRow(), true))
.build())
.setResponseParser(
ProtoMessageResponseParser.newBuilder()
.setDefaultInstance(Row.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor
batchUpdateRowsMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/BatchUpdateRows")
.setHttpMethod("POST")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{parent=tables/*}/rows:batchUpdate",
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(BatchUpdateRowsResponse.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor deleteRowMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/DeleteRow")
.setHttpMethod("DELETE")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{name=tables/*/rows/*}",
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(Empty.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private static final ApiMethodDescriptor
batchDeleteRowsMethodDescriptor =
ApiMethodDescriptor.newBuilder()
.setFullMethodName("google.area120.tables.v1alpha1.TablesService/BatchDeleteRows")
.setHttpMethod("POST")
.setType(ApiMethodDescriptor.MethodType.UNARY)
.setRequestFormatter(
ProtoMessageRequestFormatter.newBuilder()
.setPath(
"/v1alpha1/{parent=tables/*}/rows:batchDelete",
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(Empty.getDefaultInstance())
.setDefaultTypeRegistry(typeRegistry)
.build())
.build();
private final UnaryCallable getTableCallable;
private final UnaryCallable listTablesCallable;
private final UnaryCallable listTablesPagedCallable;
private final UnaryCallable getWorkspaceCallable;
private final UnaryCallable listWorkspacesCallable;
private final UnaryCallable
listWorkspacesPagedCallable;
private final UnaryCallable getRowCallable;
private final UnaryCallable listRowsCallable;
private final UnaryCallable listRowsPagedCallable;
private final UnaryCallable createRowCallable;
private final UnaryCallable
batchCreateRowsCallable;
private final UnaryCallable updateRowCallable;
private final UnaryCallable
batchUpdateRowsCallable;
private final UnaryCallable deleteRowCallable;
private final UnaryCallable batchDeleteRowsCallable;
private final BackgroundResource backgroundResources;
private final HttpJsonStubCallableFactory callableFactory;
public static final HttpJsonTablesServiceStub create(TablesServiceStubSettings settings)
throws IOException {
return new HttpJsonTablesServiceStub(settings, ClientContext.create(settings));
}
public static final HttpJsonTablesServiceStub create(ClientContext clientContext)
throws IOException {
return new HttpJsonTablesServiceStub(
TablesServiceStubSettings.newHttpJsonBuilder().build(), clientContext);
}
public static final HttpJsonTablesServiceStub create(
ClientContext clientContext, HttpJsonStubCallableFactory callableFactory) throws IOException {
return new HttpJsonTablesServiceStub(
TablesServiceStubSettings.newHttpJsonBuilder().build(), clientContext, callableFactory);
}
/**
* Constructs an instance of HttpJsonTablesServiceStub, 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 HttpJsonTablesServiceStub(
TablesServiceStubSettings settings, ClientContext clientContext) throws IOException {
this(settings, clientContext, new HttpJsonTablesServiceCallableFactory());
}
/**
* Constructs an instance of HttpJsonTablesServiceStub, 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 HttpJsonTablesServiceStub(
TablesServiceStubSettings settings,
ClientContext clientContext,
HttpJsonStubCallableFactory callableFactory)
throws IOException {
this.callableFactory = callableFactory;
HttpJsonCallSettings getTableTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(getTableMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("name", String.valueOf(request.getName()));
return builder.build();
})
.build();
HttpJsonCallSettings listTablesTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(listTablesMethodDescriptor)
.setTypeRegistry(typeRegistry)
.build();
HttpJsonCallSettings getWorkspaceTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(getWorkspaceMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("name", String.valueOf(request.getName()));
return builder.build();
})
.build();
HttpJsonCallSettings
listWorkspacesTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(listWorkspacesMethodDescriptor)
.setTypeRegistry(typeRegistry)
.build();
HttpJsonCallSettings getRowTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(getRowMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("name", String.valueOf(request.getName()));
return builder.build();
})
.build();
HttpJsonCallSettings listRowsTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(listRowsMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
HttpJsonCallSettings createRowTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(createRowMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
HttpJsonCallSettings
batchCreateRowsTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(batchCreateRowsMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
HttpJsonCallSettings updateRowTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(updateRowMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("row.name", String.valueOf(request.getRow().getName()));
return builder.build();
})
.build();
HttpJsonCallSettings
batchUpdateRowsTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(batchUpdateRowsMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
HttpJsonCallSettings deleteRowTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(deleteRowMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("name", String.valueOf(request.getName()));
return builder.build();
})
.build();
HttpJsonCallSettings batchDeleteRowsTransportSettings =
HttpJsonCallSettings.newBuilder()
.setMethodDescriptor(batchDeleteRowsMethodDescriptor)
.setTypeRegistry(typeRegistry)
.setParamsExtractor(
request -> {
RequestParamsBuilder builder = RequestParamsBuilder.create();
builder.add("parent", String.valueOf(request.getParent()));
return builder.build();
})
.build();
this.getTableCallable =
callableFactory.createUnaryCallable(
getTableTransportSettings, settings.getTableSettings(), clientContext);
this.listTablesCallable =
callableFactory.createUnaryCallable(
listTablesTransportSettings, settings.listTablesSettings(), clientContext);
this.listTablesPagedCallable =
callableFactory.createPagedCallable(
listTablesTransportSettings, settings.listTablesSettings(), clientContext);
this.getWorkspaceCallable =
callableFactory.createUnaryCallable(
getWorkspaceTransportSettings, settings.getWorkspaceSettings(), clientContext);
this.listWorkspacesCallable =
callableFactory.createUnaryCallable(
listWorkspacesTransportSettings, settings.listWorkspacesSettings(), clientContext);
this.listWorkspacesPagedCallable =
callableFactory.createPagedCallable(
listWorkspacesTransportSettings, settings.listWorkspacesSettings(), clientContext);
this.getRowCallable =
callableFactory.createUnaryCallable(
getRowTransportSettings, settings.getRowSettings(), clientContext);
this.listRowsCallable =
callableFactory.createUnaryCallable(
listRowsTransportSettings, settings.listRowsSettings(), clientContext);
this.listRowsPagedCallable =
callableFactory.createPagedCallable(
listRowsTransportSettings, settings.listRowsSettings(), clientContext);
this.createRowCallable =
callableFactory.createUnaryCallable(
createRowTransportSettings, settings.createRowSettings(), clientContext);
this.batchCreateRowsCallable =
callableFactory.createUnaryCallable(
batchCreateRowsTransportSettings, settings.batchCreateRowsSettings(), clientContext);
this.updateRowCallable =
callableFactory.createUnaryCallable(
updateRowTransportSettings, settings.updateRowSettings(), clientContext);
this.batchUpdateRowsCallable =
callableFactory.createUnaryCallable(
batchUpdateRowsTransportSettings, settings.batchUpdateRowsSettings(), clientContext);
this.deleteRowCallable =
callableFactory.createUnaryCallable(
deleteRowTransportSettings, settings.deleteRowSettings(), clientContext);
this.batchDeleteRowsCallable =
callableFactory.createUnaryCallable(
batchDeleteRowsTransportSettings, settings.batchDeleteRowsSettings(), clientContext);
this.backgroundResources =
new BackgroundResourceAggregation(clientContext.getBackgroundResources());
}
@InternalApi
public static List getMethodDescriptors() {
List methodDescriptors = new ArrayList<>();
methodDescriptors.add(getTableMethodDescriptor);
methodDescriptors.add(listTablesMethodDescriptor);
methodDescriptors.add(getWorkspaceMethodDescriptor);
methodDescriptors.add(listWorkspacesMethodDescriptor);
methodDescriptors.add(getRowMethodDescriptor);
methodDescriptors.add(listRowsMethodDescriptor);
methodDescriptors.add(createRowMethodDescriptor);
methodDescriptors.add(batchCreateRowsMethodDescriptor);
methodDescriptors.add(updateRowMethodDescriptor);
methodDescriptors.add(batchUpdateRowsMethodDescriptor);
methodDescriptors.add(deleteRowMethodDescriptor);
methodDescriptors.add(batchDeleteRowsMethodDescriptor);
return methodDescriptors;
}
@Override
public UnaryCallable getTableCallable() {
return getTableCallable;
}
@Override
public UnaryCallable listTablesCallable() {
return listTablesCallable;
}
@Override
public UnaryCallable listTablesPagedCallable() {
return listTablesPagedCallable;
}
@Override
public UnaryCallable getWorkspaceCallable() {
return getWorkspaceCallable;
}
@Override
public UnaryCallable listWorkspacesCallable() {
return listWorkspacesCallable;
}
@Override
public UnaryCallable
listWorkspacesPagedCallable() {
return listWorkspacesPagedCallable;
}
@Override
public UnaryCallable getRowCallable() {
return getRowCallable;
}
@Override
public UnaryCallable listRowsCallable() {
return listRowsCallable;
}
@Override
public UnaryCallable listRowsPagedCallable() {
return listRowsPagedCallable;
}
@Override
public UnaryCallable createRowCallable() {
return createRowCallable;
}
@Override
public UnaryCallable batchCreateRowsCallable() {
return batchCreateRowsCallable;
}
@Override
public UnaryCallable updateRowCallable() {
return updateRowCallable;
}
@Override
public UnaryCallable batchUpdateRowsCallable() {
return batchUpdateRowsCallable;
}
@Override
public UnaryCallable deleteRowCallable() {
return deleteRowCallable;
}
@Override
public UnaryCallable batchDeleteRowsCallable() {
return batchDeleteRowsCallable;
}
@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 - 2025 Weber Informatics LLC | Privacy Policy