KEMBAR78
textproxy: Allow testproxy to build its own proto registry by trollyxia · Pull Request #2682 · googleapis/java-bigtable · GitHub
Skip to content

Conversation

@trollyxia
Copy link
Member

@trollyxia trollyxia commented Sep 25, 2025

Test proxy needs to build the proto type dynamically so it can properly construct the response message.

Change-Id: Ie930064363d92d61daad498e8380dd87ab6722dd

This is needed for the test proxy to read values from proto/enum columns, as the current API getProtoMessage(int columnIndex, AbstractMessage message) and getProtoEnum(int columnIndex, Function<Integer, ProtocolMessageEnum> forNumber) mandates such a message object or static function as the second argument.

⚠️  Reviewer Guidance: Unconventional Approach
The solution implemented here for handling Enum is quite hacky (and implemented via Gemini), so it should be reviewed with extra attention.
The way we build the internal proto registry (messageDescriptorMap, enumDescriptorMap) from a FileDescriptorSet is also not straightforward (but tested locally).

@trollyxia trollyxia requested review from a team as code owners September 25, 2025 19:43
@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 Sep 25, 2025
Change-Id: Ie930064363d92d61daad498e8380dd87ab6722dd
We now require the clients to provide FileDescriptorSet with files in dependency order

Change-Id: I240cfe8f4d499ba7053dfab1f119972de1810fce
@trollyxia trollyxia changed the title text-proxy: Allow testproxy to build its own proto registry textproxy: Allow testproxy to build its own proto registry Oct 1, 2025
@mutianf mutianf merged commit 9cbfd50 into googleapis:main Oct 1, 2025
33 of 34 checks passed
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: m Pull request size is medium.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants