public static final class IcebergCatalogServiceGrpc.IcebergCatalogServiceFutureStub extends AbstractFutureStub<IcebergCatalogServiceGrpc.IcebergCatalogServiceFutureStub>
A stub to allow clients to do ListenableFuture-style rpc calls to service
IcebergCatalogService.
Iceberg Catalog Service API: this implements the open-source Iceberg REST
Catalog API.
See the API definition here:
https://github.com/apache/iceberg/blob/main/open-api/rest-catalog-open-api.yaml
The API is defined as OpenAPI 3.1.1 spec.
Currently we only support the following methods:
- GetConfig/GetIcebergCatalogConfig
- ListIcebergNamespaces
- CheckIcebergNamespaceExists
- GetIcebergNamespace
- CreateIcebergNamespace (only supports single level)
- DeleteIcebergNamespace
- UpdateIcebergNamespace properties
- ListTableIdentifiers
- CreateIcebergTable
- DeleteIcebergTable
- GetIcebergTable
- UpdateIcebergTable (CommitTable)
- LoadIcebergTableCredentials
- RegisterTable
Users are required to provided the
X-Goog-User-Project
header with the
project id or number which can be different from the bucket project id.
That project will be charged for the API calls and the calling user must have
access to that project. The caller must have serviceusage.services.use
permission on the project.
Inheritance
java.lang.Object >
io.grpc.stub.AbstractStub >
io.grpc.stub.AbstractFutureStub >
IcebergCatalogServiceGrpc.IcebergCatalogServiceFutureStub
Inherited Members
io.grpc.stub.AbstractFutureStub.<T>newStub(io.grpc.stub.AbstractStub.StubFactory<T>,io.grpc.Channel)
io.grpc.stub.AbstractFutureStub.<T>newStub(io.grpc.stub.AbstractStub.StubFactory<T>,io.grpc.Channel,io.grpc.CallOptions)
io.grpc.stub.AbstractStub.<T>withOption(io.grpc.CallOptions.Key<T>,T)
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)
io.grpc.stub.AbstractStub.getCallOptions()
io.grpc.stub.AbstractStub.getChannel()
io.grpc.stub.AbstractStub.withCallCredentials(io.grpc.CallCredentials)
io.grpc.stub.AbstractStub.withChannel(io.grpc.Channel)
io.grpc.stub.AbstractStub.withCompression(java.lang.String)
io.grpc.stub.AbstractStub.withDeadline(io.grpc.Deadline)
io.grpc.stub.AbstractStub.withDeadlineAfter(java.time.Duration)
io.grpc.stub.AbstractStub.withDeadlineAfter(long,java.util.concurrent.TimeUnit)
io.grpc.stub.AbstractStub.withExecutor(java.util.concurrent.Executor)
io.grpc.stub.AbstractStub.withInterceptors(io.grpc.ClientInterceptor...)
io.grpc.stub.AbstractStub.withMaxInboundMessageSize(int)
io.grpc.stub.AbstractStub.withMaxOutboundMessageSize(int)
io.grpc.stub.AbstractStub.withOnReadyThreshold(int)
io.grpc.stub.AbstractStub.withWaitForReady()
Methods
build(Channel channel, CallOptions callOptions)
protected IcebergCatalogServiceGrpc.IcebergCatalogServiceFutureStub build(Channel channel, CallOptions callOptions)
Parameters |
Name |
Description |
channel |
io.grpc.Channel
|
callOptions |
io.grpc.CallOptions
|
Overrides
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)
checkIcebergNamespaceExists(GetIcebergNamespaceRequest request)
public ListenableFuture<Empty> checkIcebergNamespaceExists(GetIcebergNamespaceRequest request)
Returns 204 if the namespace exists, 404 otherwise.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<Empty> |
|
checkIcebergTableExists(GetIcebergTableRequest request)
public ListenableFuture<Empty> checkIcebergTableExists(GetIcebergTableRequest request)
Returns 204 if the table exists, 404 otherwise. This is a HEAD
HTTP
method.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<Empty> |
|
createIcebergCatalog(CreateIcebergCatalogRequest request)
public ListenableFuture<IcebergCatalog> createIcebergCatalog(CreateIcebergCatalogRequest request)
Creates the Iceberg REST Catalog.
Currently only supports Google Cloud Storage Bucket catalogs.
Google Cloud Storage Bucket catalog id is the bucket for which the
catalog is created (e.g. my-catalog
for gs://my-catalog
).
If the bucket does not exist, of the caller does not have bucket metadata
permissions, the catalog will not be created.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<IcebergCatalog> |
|
createIcebergNamespace(CreateIcebergNamespaceRequest request)
public ListenableFuture<IcebergNamespace> createIcebergNamespace(CreateIcebergNamespaceRequest request)
Creates a namespace in the catalog.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<IcebergNamespace> |
|
createIcebergTable(CreateIcebergTableRequest request)
public ListenableFuture<HttpBody> createIcebergTable(CreateIcebergTableRequest request)
Creates a table in the namespace.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<com.google.api.HttpBody> |
|
deleteIcebergCatalog(DeleteIcebergCatalogRequest request)
public ListenableFuture<Empty> deleteIcebergCatalog(DeleteIcebergCatalogRequest request)
Deletes the Iceberg REST Catalog.
Delete does not delete a catalog that has contents -- at least one
namespace.
Delete is not supported for all catalog types.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<Empty> |
|
deleteIcebergNamespace(DeleteIcebergNamespaceRequest request)
public ListenableFuture<Empty> deleteIcebergNamespace(DeleteIcebergNamespaceRequest request)
Returns 204, not 200 on success.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<Empty> |
|
deleteIcebergTable(DeleteIcebergTableRequest request)
public ListenableFuture<Empty> deleteIcebergTable(DeleteIcebergTableRequest request)
Deletes a table in the namespace.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<Empty> |
|
failoverIcebergCatalog(FailoverIcebergCatalogRequest request)
public ListenableFuture<FailoverIcebergCatalogResponse> failoverIcebergCatalog(FailoverIcebergCatalogRequest request)
Failover the catalog to a new primary replica region.
getIcebergCatalog(GetIcebergCatalogRequest request)
public ListenableFuture<IcebergCatalog> getIcebergCatalog(GetIcebergCatalogRequest request)
Returns the Iceberg REST Catalog configuration options.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<IcebergCatalog> |
|
getIcebergCatalogConfig(GetIcebergCatalogConfigRequest request)
public ListenableFuture<IcebergCatalogConfig> getIcebergCatalogConfig(GetIcebergCatalogConfigRequest request)
GetIcebergCatalogConfig lists all catalog configuration settings. Most
importantly it contains the optional endpoints
field which lists what
methods this catalog supports, since we are not supporting all the methods
right now.
It returns all the methods defined in this service (subject to project
config allowlisting).
This is not a GCP resource.
getIcebergNamespace(GetIcebergNamespaceRequest request)
public ListenableFuture<IcebergNamespace> getIcebergNamespace(GetIcebergNamespaceRequest request)
Gets an Iceberg namespace in the catalog (or checks if it exists, if the
method is HEAD).
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<IcebergNamespace> |
|
getIcebergTable(GetIcebergTableRequest request)
public ListenableFuture<HttpBody> getIcebergTable(GetIcebergTableRequest request)
Gets a table in the namespace.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<com.google.api.HttpBody> |
|
listIcebergCatalogs(ListIcebergCatalogsRequest request)
public ListenableFuture<ListIcebergCatalogsResponse> listIcebergCatalogs(ListIcebergCatalogsRequest request)
Lists the Iceberg REST Catalogs.
listIcebergNamespaces(ListIcebergNamespacesRequest request)
public ListenableFuture<ListIcebergNamespacesResponse> listIcebergNamespaces(ListIcebergNamespacesRequest request)
Lists Iceberg namespaces in the catalog. We only support one level of
nesting for namespaces.
listIcebergTableIdentifiers(ListIcebergTableIdentifiersRequest request)
public ListenableFuture<ListIcebergTableIdentifiersResponse> listIcebergTableIdentifiers(ListIcebergTableIdentifiersRequest request)
Lists table identifiers (not tables) in the namespace.
loadIcebergTableCredentials(GetIcebergTableRequest request)
public ListenableFuture<LoadIcebergTableCredentialsResponse> loadIcebergTableCredentials(GetIcebergTableRequest request)
Loads credentials for a table in the namespace.
registerIcebergTable(RegisterIcebergTableRequest request)
public ListenableFuture<HttpBody> registerIcebergTable(RegisterIcebergTableRequest request)
Register a table using given metadata file location.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<com.google.api.HttpBody> |
|
updateIcebergCatalog(UpdateIcebergCatalogRequest request)
public ListenableFuture<IcebergCatalog> updateIcebergCatalog(UpdateIcebergCatalogRequest request)
Update the Iceberg REST Catalog configuration options.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<IcebergCatalog> |
|
updateIcebergNamespace(UpdateIcebergNamespaceRequest request)
public ListenableFuture<UpdateIcebergNamespaceResponse> updateIcebergNamespace(UpdateIcebergNamespaceRequest request)
Updates namespace properties.
updateIcebergTable(UpdateIcebergTableRequest request)
public ListenableFuture<HttpBody> updateIcebergTable(UpdateIcebergTableRequest request)
This is CommitTable Iceberg API, which maps to UpdateIcebergTable
in the
Google API nomenclature.
Returns |
Type |
Description |
com.google.common.util.concurrent.ListenableFuture<com.google.api.HttpBody> |
|