Skip to content

Add CloudConfigStore protobuf service#389

Merged
LossyDragon merged 2 commits into
Longi94:masterfrom
VinceBT:feat/cloudconfigstore-proto
Jun 30, 2026
Merged

Add CloudConfigStore protobuf service#389
LossyDragon merged 2 commits into
Longi94:masterfrom
VinceBT:feat/cloudconfigstore-proto

Conversation

@VinceBT

@VinceBT VinceBT commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

JavaSteam ships the Steam Cloud (file storage) messages but not CloudConfigStore, which is the namespace where things like user-defined game collections live. Without it there's no way to call CloudConfigStore.Download from a UnifiedMessages handler, so I had to hand-roll the protobuf + a service stub downstream.

This adds steammessages_cloudconfigstore.steamclient.proto (messages + the CloudConfigStore / CloudConfigStoreClient services), mirroring the sibling steammessages_cloud.steamclient.proto layout. The message definitions come straight from SteamDB's Protobufs.

The RPC generator picks it up automatically (no extra wiring needed):

[steammessages_cloudconfigstore.steamclient.proto] - found "CloudConfigStore", which has 2 methods
[steammessages_cloudconfigstore.steamclient.proto] - found "CloudConfigStoreClient", which has 1 methods

generateProto + generateRpcMethods build clean and produce SteammessagesCloudconfigstoreSteamclient plus the CloudConfigStore service stub.

@LossyDragon

Copy link
Copy Markdown
Collaborator

This looks to be a webui protobuf? If so, put it here src/main/proto/in/dragonbra/javasteam/protobufs/webui.

Reference: https://github.com/SteamTracking/Protobufs/blob/master/webui/service_cloudconfigstore.proto

@VinceBT

VinceBT commented Jun 30, 2026

Copy link
Copy Markdown
Contributor Author

Good call, moved it to protobufs/webui/service_cloudconfigstore.proto with the webui java_package. Only tweak vs the clientcomm one: CloudConfigStoreClient.NotifyChange returns .NoResponse, which is only defined in steammessages_unified_base, so I import that. generateProto + generateRpcMethods build clean and the service stub still gets picked up.

@VinceBT VinceBT force-pushed the feat/cloudconfigstore-proto branch from 91158ea to 5f4af50 Compare June 30, 2026 06:18
@LossyDragon

LossyDragon commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator

Looks good, thanks! That NoResponse should be fine to use. The WebUI protos are pretty new for JavaSteam and I recall protobufs are picky if there are two signatures with the same name in the .proto. package. That's rainy day project to port common_base to webui for consistency.

@LossyDragon LossyDragon merged commit 7bc40d9 into Longi94:master Jun 30, 2026
1 check passed
@VinceBT VinceBT deleted the feat/cloudconfigstore-proto branch June 30, 2026 15:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants