Class IcebergCatalogServiceGrpc.IcebergCatalogServiceStub (0.62.0)

public static final class IcebergCatalogServiceGrpc.IcebergCatalogServiceStub extends AbstractAsyncStub<IcebergCatalogServiceGrpc.IcebergCatalogServiceStub>

A stub to allow clients to do asynchronous 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.AbstractAsyncStub > IcebergCatalogServiceGrpc.IcebergCatalogServiceStub

Methods

build(Channel channel, CallOptions callOptions)

protected IcebergCatalogServiceGrpc.IcebergCatalogServiceStub build(Channel channel, CallOptions callOptions)
Parameters
Name Description
channel io.grpc.Channel
callOptions io.grpc.CallOptions
Returns
Type Description
IcebergCatalogServiceGrpc.IcebergCatalogServiceStub
Overrides
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)

checkIcebergNamespaceExists(GetIcebergNamespaceRequest request, StreamObserver<Empty> responseObserver)

public void checkIcebergNamespaceExists(GetIcebergNamespaceRequest request, StreamObserver<Empty> responseObserver)

Returns 204 if the namespace exists, 404 otherwise.

Parameters
Name Description
request GetIcebergNamespaceRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

checkIcebergTableExists(GetIcebergTableRequest request, StreamObserver<Empty> responseObserver)

public void checkIcebergTableExists(GetIcebergTableRequest request, StreamObserver<Empty> responseObserver)

Returns 204 if the table exists, 404 otherwise. This is a HEAD HTTP method.

Parameters
Name Description
request GetIcebergTableRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

createIcebergCatalog(CreateIcebergCatalogRequest request, StreamObserver<IcebergCatalog> responseObserver)

public void createIcebergCatalog(CreateIcebergCatalogRequest request, StreamObserver<IcebergCatalog> responseObserver)

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.

Parameters
Name Description
request CreateIcebergCatalogRequest
responseObserver io.grpc.stub.StreamObserver<IcebergCatalog>

createIcebergNamespace(CreateIcebergNamespaceRequest request, StreamObserver<IcebergNamespace> responseObserver)

public void createIcebergNamespace(CreateIcebergNamespaceRequest request, StreamObserver<IcebergNamespace> responseObserver)

Creates a namespace in the catalog.

Parameters
Name Description
request CreateIcebergNamespaceRequest
responseObserver io.grpc.stub.StreamObserver<IcebergNamespace>

createIcebergTable(CreateIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

public void createIcebergTable(CreateIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

Creates a table in the namespace.

Parameters
Name Description
request CreateIcebergTableRequest
responseObserver io.grpc.stub.StreamObserver<com.google.api.HttpBody>

deleteIcebergCatalog(DeleteIcebergCatalogRequest request, StreamObserver<Empty> responseObserver)

public void deleteIcebergCatalog(DeleteIcebergCatalogRequest request, StreamObserver<Empty> responseObserver)

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.

Parameters
Name Description
request DeleteIcebergCatalogRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

deleteIcebergNamespace(DeleteIcebergNamespaceRequest request, StreamObserver<Empty> responseObserver)

public void deleteIcebergNamespace(DeleteIcebergNamespaceRequest request, StreamObserver<Empty> responseObserver)

Returns 204, not 200 on success.

Parameters
Name Description
request DeleteIcebergNamespaceRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

deleteIcebergTable(DeleteIcebergTableRequest request, StreamObserver<Empty> responseObserver)

public void deleteIcebergTable(DeleteIcebergTableRequest request, StreamObserver<Empty> responseObserver)

Deletes a table in the namespace.

Parameters
Name Description
request DeleteIcebergTableRequest
responseObserver io.grpc.stub.StreamObserver<Empty>

failoverIcebergCatalog(FailoverIcebergCatalogRequest request, StreamObserver<FailoverIcebergCatalogResponse> responseObserver)

public void failoverIcebergCatalog(FailoverIcebergCatalogRequest request, StreamObserver<FailoverIcebergCatalogResponse> responseObserver)

Failover the catalog to a new primary replica region.

Parameters
Name Description
request FailoverIcebergCatalogRequest
responseObserver io.grpc.stub.StreamObserver<FailoverIcebergCatalogResponse>

getIcebergCatalog(GetIcebergCatalogRequest request, StreamObserver<IcebergCatalog> responseObserver)

public void getIcebergCatalog(GetIcebergCatalogRequest request, StreamObserver<IcebergCatalog> responseObserver)

Returns the Iceberg REST Catalog configuration options.

Parameters
Name Description
request GetIcebergCatalogRequest
responseObserver io.grpc.stub.StreamObserver<IcebergCatalog>

getIcebergCatalogConfig(GetIcebergCatalogConfigRequest request, StreamObserver<IcebergCatalogConfig> responseObserver)

public void getIcebergCatalogConfig(GetIcebergCatalogConfigRequest request, StreamObserver<IcebergCatalogConfig> responseObserver)

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.

Parameters
Name Description
request GetIcebergCatalogConfigRequest
responseObserver io.grpc.stub.StreamObserver<IcebergCatalogConfig>

getIcebergNamespace(GetIcebergNamespaceRequest request, StreamObserver<IcebergNamespace> responseObserver)

public void getIcebergNamespace(GetIcebergNamespaceRequest request, StreamObserver<IcebergNamespace> responseObserver)

Gets an Iceberg namespace in the catalog (or checks if it exists, if the method is HEAD).

Parameters
Name Description
request GetIcebergNamespaceRequest
responseObserver io.grpc.stub.StreamObserver<IcebergNamespace>

getIcebergTable(GetIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

public void getIcebergTable(GetIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

Gets a table in the namespace.

Parameters
Name Description
request GetIcebergTableRequest
responseObserver io.grpc.stub.StreamObserver<com.google.api.HttpBody>

listIcebergCatalogs(ListIcebergCatalogsRequest request, StreamObserver<ListIcebergCatalogsResponse> responseObserver)

public void listIcebergCatalogs(ListIcebergCatalogsRequest request, StreamObserver<ListIcebergCatalogsResponse> responseObserver)

Lists the Iceberg REST Catalogs.

Parameters
Name Description
request ListIcebergCatalogsRequest
responseObserver io.grpc.stub.StreamObserver<ListIcebergCatalogsResponse>

listIcebergNamespaces(ListIcebergNamespacesRequest request, StreamObserver<ListIcebergNamespacesResponse> responseObserver)

public void listIcebergNamespaces(ListIcebergNamespacesRequest request, StreamObserver<ListIcebergNamespacesResponse> responseObserver)

Lists Iceberg namespaces in the catalog. We only support one level of nesting for namespaces.

Parameters
Name Description
request ListIcebergNamespacesRequest
responseObserver io.grpc.stub.StreamObserver<ListIcebergNamespacesResponse>

listIcebergTableIdentifiers(ListIcebergTableIdentifiersRequest request, StreamObserver<ListIcebergTableIdentifiersResponse> responseObserver)

public void listIcebergTableIdentifiers(ListIcebergTableIdentifiersRequest request, StreamObserver<ListIcebergTableIdentifiersResponse> responseObserver)

Lists table identifiers (not tables) in the namespace.

Parameters
Name Description
request ListIcebergTableIdentifiersRequest
responseObserver io.grpc.stub.StreamObserver<ListIcebergTableIdentifiersResponse>

loadIcebergTableCredentials(GetIcebergTableRequest request, StreamObserver<LoadIcebergTableCredentialsResponse> responseObserver)

public void loadIcebergTableCredentials(GetIcebergTableRequest request, StreamObserver<LoadIcebergTableCredentialsResponse> responseObserver)

Loads credentials for a table in the namespace.

Parameters
Name Description
request GetIcebergTableRequest
responseObserver io.grpc.stub.StreamObserver<LoadIcebergTableCredentialsResponse>

registerIcebergTable(RegisterIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

public void registerIcebergTable(RegisterIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

Register a table using given metadata file location.

Parameters
Name Description
request RegisterIcebergTableRequest
responseObserver io.grpc.stub.StreamObserver<com.google.api.HttpBody>

updateIcebergCatalog(UpdateIcebergCatalogRequest request, StreamObserver<IcebergCatalog> responseObserver)

public void updateIcebergCatalog(UpdateIcebergCatalogRequest request, StreamObserver<IcebergCatalog> responseObserver)

Update the Iceberg REST Catalog configuration options.

Parameters
Name Description
request UpdateIcebergCatalogRequest
responseObserver io.grpc.stub.StreamObserver<IcebergCatalog>

updateIcebergNamespace(UpdateIcebergNamespaceRequest request, StreamObserver<UpdateIcebergNamespaceResponse> responseObserver)

public void updateIcebergNamespace(UpdateIcebergNamespaceRequest request, StreamObserver<UpdateIcebergNamespaceResponse> responseObserver)

Updates namespace properties.

Parameters
Name Description
request UpdateIcebergNamespaceRequest
responseObserver io.grpc.stub.StreamObserver<UpdateIcebergNamespaceResponse>

updateIcebergTable(UpdateIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

public void updateIcebergTable(UpdateIcebergTableRequest request, StreamObserver<HttpBody> responseObserver)

This is CommitTable Iceberg API, which maps to UpdateIcebergTable in the Google API nomenclature.

Parameters
Name Description
request UpdateIcebergTableRequest
responseObserver io.grpc.stub.StreamObserver<com.google.api.HttpBody>