public static final class IcebergCatalogServiceGrpc.IcebergCatalogServiceBlockingStub extends AbstractBlockingStub<IcebergCatalogServiceGrpc.IcebergCatalogServiceBlockingStub>
A stub to allow clients to do limited synchronous 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.AbstractBlockingStub >
IcebergCatalogServiceGrpc.IcebergCatalogServiceBlockingStub
Inherited Members
io.grpc.stub.AbstractBlockingStub.<T>newStub(io.grpc.stub.AbstractStub.StubFactory<T>,io.grpc.Channel)
io.grpc.stub.AbstractBlockingStub.<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.IcebergCatalogServiceBlockingStub 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 Empty checkIcebergNamespaceExists(GetIcebergNamespaceRequest request)
Returns 204 if the namespace exists, 404 otherwise.
Returns |
Type |
Description |
Empty |
|
checkIcebergTableExists(GetIcebergTableRequest request)
public Empty checkIcebergTableExists(GetIcebergTableRequest request)
Returns 204 if the table exists, 404 otherwise. This is a HEAD
HTTP
method.
Returns |
Type |
Description |
Empty |
|
createIcebergCatalog(CreateIcebergCatalogRequest request)
public 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.
createIcebergNamespace(CreateIcebergNamespaceRequest request)
public IcebergNamespace createIcebergNamespace(CreateIcebergNamespaceRequest request)
Creates a namespace in the catalog.
createIcebergTable(CreateIcebergTableRequest request)
public HttpBody createIcebergTable(CreateIcebergTableRequest request)
Creates a table in the namespace.
Returns |
Type |
Description |
com.google.api.HttpBody |
|
deleteIcebergCatalog(DeleteIcebergCatalogRequest request)
public 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 |
Empty |
|
deleteIcebergNamespace(DeleteIcebergNamespaceRequest request)
public Empty deleteIcebergNamespace(DeleteIcebergNamespaceRequest request)
Returns 204, not 200 on success.
Returns |
Type |
Description |
Empty |
|
deleteIcebergTable(DeleteIcebergTableRequest request)
public Empty deleteIcebergTable(DeleteIcebergTableRequest request)
Deletes a table in the namespace.
Returns |
Type |
Description |
Empty |
|
failoverIcebergCatalog(FailoverIcebergCatalogRequest request)
public FailoverIcebergCatalogResponse failoverIcebergCatalog(FailoverIcebergCatalogRequest request)
Failover the catalog to a new primary replica region.
getIcebergCatalog(GetIcebergCatalogRequest request)
public IcebergCatalog getIcebergCatalog(GetIcebergCatalogRequest request)
Returns the Iceberg REST Catalog configuration options.
getIcebergCatalogConfig(GetIcebergCatalogConfigRequest request)
public 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 IcebergNamespace getIcebergNamespace(GetIcebergNamespaceRequest request)
Gets an Iceberg namespace in the catalog (or checks if it exists, if the
method is HEAD).
getIcebergTable(GetIcebergTableRequest request)
public HttpBody getIcebergTable(GetIcebergTableRequest request)
Gets a table in the namespace.
Returns |
Type |
Description |
com.google.api.HttpBody |
|
listIcebergCatalogs(ListIcebergCatalogsRequest request)
public ListIcebergCatalogsResponse listIcebergCatalogs(ListIcebergCatalogsRequest request)
Lists the Iceberg REST Catalogs.
listIcebergNamespaces(ListIcebergNamespacesRequest request)
public ListIcebergNamespacesResponse listIcebergNamespaces(ListIcebergNamespacesRequest request)
Lists Iceberg namespaces in the catalog. We only support one level of
nesting for namespaces.
listIcebergTableIdentifiers(ListIcebergTableIdentifiersRequest request)
public ListIcebergTableIdentifiersResponse listIcebergTableIdentifiers(ListIcebergTableIdentifiersRequest request)
Lists table identifiers (not tables) in the namespace.
loadIcebergTableCredentials(GetIcebergTableRequest request)
public LoadIcebergTableCredentialsResponse loadIcebergTableCredentials(GetIcebergTableRequest request)
Loads credentials for a table in the namespace.
registerIcebergTable(RegisterIcebergTableRequest request)
public HttpBody registerIcebergTable(RegisterIcebergTableRequest request)
Register a table using given metadata file location.
Returns |
Type |
Description |
com.google.api.HttpBody |
|
updateIcebergCatalog(UpdateIcebergCatalogRequest request)
public IcebergCatalog updateIcebergCatalog(UpdateIcebergCatalogRequest request)
Update the Iceberg REST Catalog configuration options.
updateIcebergNamespace(UpdateIcebergNamespaceRequest request)
public UpdateIcebergNamespaceResponse updateIcebergNamespace(UpdateIcebergNamespaceRequest request)
Updates namespace properties.
updateIcebergTable(UpdateIcebergTableRequest request)
public HttpBody updateIcebergTable(UpdateIcebergTableRequest request)
This is CommitTable Iceberg API, which maps to UpdateIcebergTable
in the
Google API nomenclature.
Returns |
Type |
Description |
com.google.api.HttpBody |
|