E52E feat: expose generated GAPIC admin client and freeze legacy surface by jinseopkim0 · Pull Request #2806 · googleapis/java-bigtable · GitHub
[go: up one dir, main page]

Skip to content

feat: expose generated GAPIC admin client and freeze legacy surface#2806

Merged
jinseopkim0 merged 7 commits intomainfrom
legacy-client-integration
Feb 27, 2026
Merged

feat: expose generated GAPIC admin client and freeze legacy surface#2806
jinseopkim0 merged 7 commits intomainfrom
legacy-client-integration

Conversation

@jinseopkim0
Copy link
Contributor

This PR integrates the autogenerated BaseBigtableTableAdminClient into the existing legacy BigtableTableAdminClient using composition.

Changes:

  • Added a getNewApi() method to BigtableTableAdminClient that exposes the underlying autogenerated GAPIC client.
  • Marked all existing handwritten legacy veneer methods (e.g., createTable, updateTable, deleteTable) with @ObsoleteApi.

Context:
As part of the Admin API GAPIC modernization, we want to direct users to the standardized, proto-based methods. We chose composition (getNewApi()) over inheritance (extends BaseBigtableTableAdminClient) to avoid method signature collisions between the generated convenience methods and the legacy handwritten methods (e.g., deleteTable(String)).

This freezes the legacy API surface while giving customers full access to new features natively.

Tracking Bug: b/475818901

This change adds a `getNewApi()` method to `BigtableTableAdminClient` which returns the underlying `BaseBigtableTableAdminClient`.

By using composition, we expose the fully generated GAPIC client to users, allowing them to access the newest features and proto-based methods. This maintains the legacy client as a backward-compatible facade without risking method signature collisions.

This addresses the legacy client integration phase of the Admin API GAPIC upgrade.

Tracking Bug: b/475818901
@product-auto-label product-auto-label bot added size: m Pull request size is medium. api: bigtable Issues related to the googleapis/java-bigtable API. labels Feb 25, 2026
Marks all existing legacy veneer methods in BigtableTableAdminClient with @ObsoleteApi, directing users to the new getNewApi() surface.
This freezes the legacy API surface as planned in the GAPIC modernization effort.

Tracking Bug: b/475818901
@jinseopkim0 jinseopkim0 force-pushed the legacy-client-integration branch from d22d899 to abd35dd Compare February 25, 2026 19:35
@jinseopkim0 jinseopkim0 marked this pull request as ready for review February 26, 2026 17:04
@jinseopkim0 jinseopkim0 requested review from a team as code owners February 26, 2026 17:04
@jinseopkim0 jinseopkim0 requested a review from lqiu96 February 26, 2026 17:04
@product-auto-label product-auto-label bot added size: l Pull request size is large. and removed size: m Pull request size is medium. labels Feb 26, 2026
@jinseopkim0 jinseopkim0 requested a review from lqiu96 February 26, 2026 19:00
@jinseopkim0 jinseopkim0 requested a review from lqiu96 February 27, 2026 15:55
@jinseopkim0 jinseopkim0 merged commit c620710 into main Feb 27, 2026
28 checks passed
@jinseopkim0 jinseopkim0 deleted the legacy-client-integration branch February 27, 2026 17:17
jinseopkim0 added a commit that referenced this pull request Mar 2, 2026
…surface

Adds getBaseClient() to BigtableInstanceAdminClient and marks all legacy handwritten veneer methods as @ObsoleteApi. This mirrors the recent changes to BigtableTableAdminClient in #2806.

Tracking Bug: b/475818901
jinseopkim0 added a commit that referenced this pull request Mar 2, 2026
* feat: expose generated GAPIC instance admin client and freeze legacy surface

Adds getBaseClient() to BigtableInstanceAdminClient and marks all legacy handwritten veneer methods as @ObsoleteApi. This mirrors the recent changes to BigtableTableAdminClient in #2806.

Tracking Bug: b/475818901

* chore: generate libraries at Mon Mar  2 19:27:28 UTC 2026

---------

Co-authored-by: cloud-java-bot <cloud-java-bot@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: bigtable Issues related to the googleapis/java-bigtable API. size: l Pull request size is large.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

0