From 5f4af50e3c8e342d34586e260b2f4056759b42e1 Mon Sep 17 00:00:00 2001 From: VinceBT Date: Mon, 29 Jun 2026 20:50:16 +0200 Subject: [PATCH 1/2] Add CloudConfigStore webui protobuf service --- .../webui/service_cloudconfigstore.proto | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto diff --git a/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto b/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto new file mode 100644 index 00000000..71b5543e --- /dev/null +++ b/src/main/proto/in/dragonbra/javasteam/protobufs/webui/service_cloudconfigstore.proto @@ -0,0 +1,57 @@ +import "in/dragonbra/javasteam/protobufs/steamclient/steammessages_unified_base.steamclient.proto"; + +option java_package = "in.dragonbra.javasteam.protobufs.webui"; + +option optimize_for = SPEED; +option java_generic_services = false; + +message CCloudConfigStore_Change_Notification { + repeated .CCloudConfigStore_NamespaceVersion versions = 2; +} + +message CCloudConfigStore_Download_Request { + repeated .CCloudConfigStore_NamespaceVersion versions = 1; +} + +message CCloudConfigStore_Download_Response { + repeated .CCloudConfigStore_NamespaceData data = 1; +} + +message CCloudConfigStore_Entry { + optional string key = 1; + optional bool is_deleted = 2; + optional string value = 3; + optional fixed32 timestamp = 4; + optional uint64 version = 5; +} + +message CCloudConfigStore_NamespaceData { + optional uint32 enamespace = 1; + optional uint64 version = 2; + repeated .CCloudConfigStore_Entry entries = 3; + optional uint64 horizon = 4; +} + +message CCloudConfigStore_NamespaceVersion { + optional uint32 enamespace = 1; + optional uint64 version = 2; +} + +message CCloudConfigStore_Upload_Request { + repeated .CCloudConfigStore_NamespaceData data = 1; +} + +message CCloudConfigStore_Upload_Response { + repeated .CCloudConfigStore_NamespaceVersion versions = 1; +} + +service CloudConfigStore { + // bConstMethod=true, ePrivilege=1 + rpc Download (.CCloudConfigStore_Download_Request) returns (.CCloudConfigStore_Download_Response); + // ePrivilege=1 + rpc Upload (.CCloudConfigStore_Upload_Request) returns (.CCloudConfigStore_Upload_Response); +} + +service CloudConfigStoreClient { + rpc NotifyChange (.CCloudConfigStore_Change_Notification) returns (.NoResponse); +} From 310067f83022554b70fec64187d4e3b068bea7a7 Mon Sep 17 00:00:00 2001 From: LossyDragon Date: Tue, 30 Jun 2026 09:41:11 -0500 Subject: [PATCH 2/2] Make tests pass --- .../java/in/dragonbra/javasteam/rpc/UnifiedInterfaceTest.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/test/java/in/dragonbra/javasteam/rpc/UnifiedInterfaceTest.kt b/src/test/java/in/dragonbra/javasteam/rpc/UnifiedInterfaceTest.kt index 3fd245c4..a30f6249 100644 --- a/src/test/java/in/dragonbra/javasteam/rpc/UnifiedInterfaceTest.kt +++ b/src/test/java/in/dragonbra/javasteam/rpc/UnifiedInterfaceTest.kt @@ -82,7 +82,9 @@ class UnifiedInterfaceTest { "PublishedFileClient.kt", // WebUI - "ClientComm.kt" + "ClientComm.kt", + "CloudConfigStore.kt", + "CloudConfigStoreClient.kt", ) } }