From 83c140f1968287a6fc4d94e122f0897e70e42e03 Mon Sep 17 00:00:00 2001 From: Richard Sandoval Date: Fri, 28 Nov 2025 11:58:42 +0100 Subject: [PATCH] feat(assets): add GetGridpool RPC and associated request/response messages - Introduced GetGridpool RPC to fetch details of a specific gridpool. - Added GetGridpoolRequest and GetGridpoolResponse messages for handling the request and response data. - Updated proto imports to include gridpool definitions. Signed-off-by: Richard Sandoval --- RELEASE_NOTES.md | 2 ++ proto/frequenz/api/assets/v1/assets.proto | 21 +++++++++++++++++++++ submodules/frequenz-api-common | 2 +- 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 2d0ecfb..da890c4 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -9,4 +9,6 @@ ## New Features +- Add the `GetGridpool` RPC to the `PlatformAssets` service. + diff --git a/proto/frequenz/api/assets/v1/assets.proto b/proto/frequenz/api/assets/v1/assets.proto index 833f60e..d1a879c 100644 --- a/proto/frequenz/api/assets/v1/assets.proto +++ b/proto/frequenz/api/assets/v1/assets.proto @@ -14,6 +14,7 @@ syntax = "proto3"; package frequenz.api.assets.v1; +import "frequenz/api/common/v1alpha8/gridpool/gridpool.proto"; import "frequenz/api/common/v1alpha8/microgrid/electrical_components/electrical_components.proto"; import "frequenz/api/common/v1alpha8/microgrid/microgrid.proto"; @@ -33,6 +34,9 @@ service PlatformAssets { rpc ListMicrogridElectricalComponentConnections( ListMicrogridElectricalComponentConnectionsRequest ) returns (ListMicrogridElectricalComponentConnectionsResponse); + + // Returns details of a specific gridpool. + rpc GetGridpool(GetGridpoolRequest) returns (GetGridpoolResponse); } // GetMicrogridRequest is the input parameter for fetching details @@ -118,3 +122,20 @@ message ListMicrogridElectricalComponentConnectionsResponse { // Contains the list of connections that match the filtering criteria. repeated frequenz.api.common.v1alpha8.microgrid.electrical_components.ElectricalComponentConnection connections =2; } + + +// GetGridpoolRequest is the input parameter for fetching details +// given a specific gridpool. +message GetGridpoolRequest { + // The unique identifier of the gridpool for which to fetch details. + uint64 gridpool_id = 1; +} + +// GetGridpoolResponse is the response for fetching details +// given a specific gridpool. +message GetGridpoolResponse { + // Details of the requested gridpool. + frequenz.api.common.v1alpha8.gridpool.Gridpool gridpool = 1; + // List of microgrids in the gridpool. + repeated frequenz.api.common.v1alpha8.microgrid.Microgrid microgrids = 2; +} diff --git a/submodules/frequenz-api-common b/submodules/frequenz-api-common index 300bcb4..6ff0c45 160000 --- a/submodules/frequenz-api-common +++ b/submodules/frequenz-api-common @@ -1 +1 @@ -Subproject commit 300bcb4296d679faa3b2aec33e7ea3d461d90beb +Subproject commit 6ff0c45a96b94ba6160a022dacc1b4b5d420dd54