From 87c65b211f5c25887059d0ca181aad0054c6322b Mon Sep 17 00:00:00 2001 From: Maxim Podosochnyy <podosochnyy@perx.ru> Date: Mon, 24 Mar 2025 15:47:08 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- examples/extension_service/servicer.py | 4 +-- perxis/extensions/extension_service.py | 2 +- perxis/extensions/extension_setup.py | 2 +- .../models.py => extensions/item_models.py} | 2 +- .../rules.py => extensions/item_rules.py} | 2 +- perxis/extensions/utils.py | 32 ++++++++++++++++++- perxis/items/utils.py | 30 ----------------- 7 files changed, 37 insertions(+), 37 deletions(-) rename perxis/{items/models.py => extensions/item_models.py} (97%) rename perxis/{items/rules.py => extensions/item_rules.py} (98%) delete mode 100644 perxis/items/utils.py diff --git a/examples/extension_service/servicer.py b/examples/extension_service/servicer.py index bcfca7c..f40984e 100644 --- a/examples/extension_service/servicer.py +++ b/examples/extension_service/servicer.py @@ -4,8 +4,8 @@ from constants import extension from constants import collections as extension_collections -from perxis.items.utils import datasource_items_from_collections, sync_policies_from_collections -from perxis.items.models import DataSourceItem, SyncPolicyItem, Item, IfCollectionExists, IfExtensionInstalled +from perxis.extensions.utils import datasource_items_from_collections, sync_policies_from_collections +from perxis.extensions.item_models import DataSourceItem, SyncPolicyItem, Item, IfCollectionExists, IfExtensionInstalled from perxis.extensions.actions import make_action_dict from perxis.extensions import extension_service_pb2 from perxis.extensions.extension_service import ExtensionService diff --git a/perxis/extensions/extension_service.py b/perxis/extensions/extension_service.py index dc98f82..3799b34 100644 --- a/perxis/extensions/extension_service.py +++ b/perxis/extensions/extension_service.py @@ -27,7 +27,7 @@ from perxis.common import operation_pb2, operation_service_pb2_grpc, operation_s from perxis.collections import collections_pb2_grpc, collections_pb2 from perxis.environments import environments_pb2_grpc from perxis.extensions.extension_setup import ExtensionSetup -from perxis.items.models import AbstractItem +from perxis.extensions.item_models import AbstractItem def generate_operation_id() -> str: diff --git a/perxis/extensions/extension_setup.py b/perxis/extensions/extension_setup.py index c613f56..41e9f55 100644 --- a/perxis/extensions/extension_setup.py +++ b/perxis/extensions/extension_setup.py @@ -16,7 +16,7 @@ from perxis.common import common_pb2 from perxis.clients import clients_pb2_grpc, clients_pb2 from perxis.environments import environments_pb2_grpc, environments_pb2 from perxis.extensions.actions import make_action_item, ACTIONS_COLLECTION_ID -from perxis.items.models import AbstractItem, SyncPolicyItem +from perxis.extensions.item_models import AbstractItem, SyncPolicyItem from perxis.provider import PerxisItemsWrapper diff --git a/perxis/items/models.py b/perxis/extensions/item_models.py similarity index 97% rename from perxis/items/models.py rename to perxis/extensions/item_models.py index bbbfeca..036f3ba 100644 --- a/perxis/items/models.py +++ b/perxis/extensions/item_models.py @@ -2,7 +2,7 @@ import abc from google.protobuf.struct_pb2 import Struct -from perxis.items.rules import AbstractRule, IfCollectionExists, IfExtensionInstalled +from perxis.extensions.item_rules import AbstractRule, IfCollectionExists, IfExtensionInstalled class AbstractItem(metaclass=abc.ABCMeta): diff --git a/perxis/items/rules.py b/perxis/extensions/item_rules.py similarity index 98% rename from perxis/items/rules.py rename to perxis/extensions/item_rules.py index fcd2a6d..106a98e 100644 --- a/perxis/items/rules.py +++ b/perxis/extensions/item_rules.py @@ -7,7 +7,7 @@ from perxis.extensions import manager_service_pb2 if typing.TYPE_CHECKING: - from perxis.items.models import AbstractItem + from perxis.extensions.item_models import AbstractItem class AbstractRule(metaclass=abc.ABCMeta): diff --git a/perxis/extensions/utils.py b/perxis/extensions/utils.py index 1075b3b..b5ba8e6 100644 --- a/perxis/extensions/utils.py +++ b/perxis/extensions/utils.py @@ -1,6 +1,36 @@ from typing import Optional from perxis.extensions import manager_service_pb2 +from perxis.extensions.item_models import DataSourceItem, SyncPolicyItem + + +def datasource_items_from_collections(collections_map: dict[str, str]) -> list[DataSourceItem]: + """ + Создание записей источников данных на базе маппинга коллекций + """ + + return [ + DataSourceItem( + collection_id=collection_id + ) + for collection_id in collections_map + if collection_id + ] + + +def sync_policies_from_collections(collections_map: dict[str, str]) -> list[SyncPolicyItem]: + """ + Создание записей синхронизации коллекций на базе маппинга коллекций + """ + + return [ + SyncPolicyItem( + collection_id=collection_id, + name=collection_name, + ) + for collection_id, collection_name in collections_map.items() + if collection_id + ] def get_extension_descriptor( @@ -19,4 +49,4 @@ def get_extension_descriptor( version_description=ext_version_description, deps=ext_deps, url=ext_host - ) \ No newline at end of file + ) diff --git a/perxis/items/utils.py b/perxis/items/utils.py deleted file mode 100644 index dd91aa4..0000000 --- a/perxis/items/utils.py +++ /dev/null @@ -1,30 +0,0 @@ -from perxis.items.models import DataSourceItem, SyncPolicyItem - - -def datasource_items_from_collections(collections_map: dict[str, str]) -> list[DataSourceItem]: - """ - Создание записей источников данных на базе маппинга коллекций - """ - - return [ - DataSourceItem( - collection_id=collection_id - ) - for collection_id in collections_map - if collection_id - ] - - -def sync_policies_from_collections(collections_map: dict[str, str]) -> list[SyncPolicyItem]: - """ - Создание записей синхронизации коллекций на базе маппинга коллекций - """ - - return [ - SyncPolicyItem( - collection_id=collection_id, - name=collection_name, - ) - for collection_id, collection_name in collections_map.items() - if collection_id - ] -- GitLab