diff --git a/proto/extensions/manager_service.proto b/proto/extensions/manager_service.proto index 9e2506b6ba955d201c11ea3bd4a9fa24f32cc6e3..d8cb3462ee0b164cb33230301098483273ce1990 100644 --- a/proto/extensions/manager_service.proto +++ b/proto/extensions/manager_service.proto @@ -52,28 +52,31 @@ service ExtensionManagerService { // Получить СЃРїРёСЃРѕРє зарегистрированных сервисов rpc ListRegisteredExtensions(ListRegisteredExtensionsRequest) returns (ListRegisteredExtensionsResponse) {} // Получить СЃРїРёСЃРѕРє сервисов - // ListExtensions - получить статус расширения + // ListExtensions - получить информацию Рѕ расширениях rpc ListExtensions(ListExtensionsRequest) returns (ListExtensionsResponse) {} // Получить описание сервиса } -// ListExtensionsRequest - запрос РЅР° получение статуса расширений РІ пространстве Рё окружении. -// Если СЃРїРёСЃРѕРє расширений РІ запросе РЅРµ передан, возвращаются расширения РІ соответствии СЃ -// переданными опциями (`installed/uninstalled`): -// - если РІ ListExtensionsRequest.extensions передан СЃРїРёСЃРѕРє расширений, то флаги игнорируются -// Рё возвращается информация Рѕ переданных РІ запросе расширениях -// - `installed:false, uninstalled:false` (равноценно `installed:true, uninstalled:false`) - -// возвращается информация РѕР± установленных расширениях -// - `installed:false, uninstalled:true` - вернуть только зарегистрированные, РЅРѕ РЅРµ установленные расширения -// - `installed:true, uninstalled:true` - вернуть информацию Рѕ всех зарегистрированных расширениях +// ListExtensionsRequest - запрос РЅР° получение статуса расширений РІ пространстве Рё окружении message ListExtensionsRequest { - repeated string extensions = 1; // РРјСЏ расширения (опционально), regexp + // РРјСЏ расширения (опционально), regexp. Фильтр РїРѕ расширениям является приоритетным + // относительно остальных фильтров - если РІ `ListExtensionsRequest.extensions` передано + // [ a, b, c ], то РІ `ListExtensionsResponse.extensions` вернется три элемента СЃ информацией Рѕ + // каждом РёР· расширений + repeated string extensions = 1; string space_id = 2; // Пространство имен расширения string env_id = 3; // Рдентификатор окружения - bool installed = 4; // Вернуть установленные расширения (РїРѕ умолчанию) - bool not_installed = 5; // Вернуть РЅРµ установленные расширения + + // Вернуть СЃРїРёСЃРѕРє расширений, которые находятся РІ РѕРґРЅРѕРј РёР· переданных состояний + // Если СЃРїРёСЃРѕРє состояний пустой, РїРѕ умолчанию возвращаются расширения РІ любом состоянии, + // РєСЂРѕРјРµ NOT_INSTALLED + repeated State state = 4; } -// GetExtensionResponse - описание расширения +// ListExtensionsResponse - описание расширений. Результирующий СЃРїРёСЃРѕРє возвращается всегда +// РІ отсортированном РІРёРґРµ: +// - Если `ListExtensionsRequest.extensions` пустой, то отсортированный РїРѕ идентификатору расширения +// - Если `ListExtensionsRequest.extensions` заполнен, то возвращаются расширения РІ соответствующем +// запросу РїРѕСЂСЏРґРєРµ message ListExtensionsResponse { message ExtensionInfo { string extension = 10100; // РРјСЏ расширения @@ -82,7 +85,6 @@ message ListExtensionsResponse { string msg = 10200; // Сообщение string error = 10300; // Ошибка (state == ERROR) bool not_found = 10350; // Расширение РЅРµ найдено - bool installed = 10400; // Расширение установлено bool update_available = 10500; // Доступно обновление string installed_version = 10510; // Установленная версия расширения string available_version = 10520; // Доступная версия расширения @@ -127,7 +129,7 @@ message ListRegisteredExtensionsResponse { // space_extensions (Пространство/Расширения) enum State { - UNKNOWN = 0; + NOT_INSTALLED = 0; INSTALLED = 1; IN_PROGRESS = 2; FAIL = 3;