From 4b20c7680f07c2b167db8f23a4a25ca121f351af Mon Sep 17 00:00:00 2001
From: Pavel Antonov <antonov@perx.ru>
Date: Thu, 19 Oct 2023 18:19:51 +0400
Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?=
 =?UTF-8?q?=D0=BD=D1=8B=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D1=8B=20ManagerSe?=
 =?UTF-8?q?rvice?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 proto/extensions/manager_service.proto | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/proto/extensions/manager_service.proto b/proto/extensions/manager_service.proto
index a85bde6..7a819ba 100644
--- a/proto/extensions/manager_service.proto
+++ b/proto/extensions/manager_service.proto
@@ -50,23 +50,25 @@ service ExtensionManagerService {
   rpc UnregisterExtensions(UnregisterExtensionsRequest) returns (UnregisterExtensionsResponse) {}
 
   // Получить список зарегистрированных сервисов
-  rpc ListExtensions(ListExtensionsRequest) returns (ListExtensionsResponse) {} // Получить список сервисов
+  rpc ListRegisteredExtensions(ListRegisteredExtensionsRequest) returns (ListRegisteredExtensionsResponse) {} // Получить список сервисов
 
-  // GetInstalledExtensions - получить статус расширения
-  rpc GetInstalledExtensions(GetInstalledExtensionsRequest) returns (GetInstalledExtensionsResponse) {} // Получить описание сервиса
+  // ListExtensions - получить статус расширения
+  rpc ListExtensions(ListExtensionsRequest) returns (ListExtensionsResponse) {} // Получить описание сервиса
 }
 
-// GetInstalledExtensionsRequest - запрос на получение статуса расширений в пространстве и окружении.
+// ListExtensionsRequest - запрос на получение статуса расширений в пространстве и окружении.
 // Если список расширений в запросе не передан, возвращаются все установленные расширения
-message GetInstalledExtensionsRequest {
-  repeated string extensions = 1; // Имя расширения
+message ListExtensionsRequest {
+  repeated string extensions = 1; // Имя расширения (опционально), regexp
   string space_id = 2; // Пространство имен расширения
   string env_id = 3; // Идентификатор окружения
+  bool installed = 4; // Вернуть установленные расширения (по умолчанию)
+  bool uninstalled = 5; // Вернуть неустановленные расширения
 }
 
 // GetExtensionResponse - описание расширения
-message GetInstalledExtensionsResponse {
-  message Status {
+message ListExtensionsResponse {
+  message ExtensionInfo {
     string extension = 10100; // Имя расширения
     string title = 10110;
     State state = 10120;
@@ -78,7 +80,7 @@ message GetInstalledExtensionsResponse {
     string installed_version = 10510; // Установленная версия расширения
     string available_version = 10520; // Доступная версия расширения
   }
-  repeated Status status = 1;
+  repeated ExtensionInfo extensions = 1;
 }
 
 // ExtensionDescriptor описание расширения (возвращается сервисом при регистрации)
@@ -111,11 +113,11 @@ message ListExtensionsFilter {
 //  repeated string action = 2; // Список действий обрабатываемых сервисами. Список может содержать регулярные выражения.
 }
 
-message ListExtensionsRequest {
+message ListRegisteredExtensionsRequest {
   ListExtensionsFilter filter = 1;
 }
 
-message ListExtensionsResponse {
+message ListRegisteredExtensionsResponse {
   repeated ExtensionDescriptor extensions = 1;
 }
 
-- 
GitLab