edu-rdm-integration 3.11.2__py3-none-any.whl → 3.13.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- edu_rdm_integration/core/storages.py +11 -11
- edu_rdm_integration/pipelines/transfer/mixins.py +4 -4
- edu_rdm_integration/stages/collect_data/function_templates/function_collect_data_template/tests.py-tpl +4 -4
- edu_rdm_integration/stages/collect_data/functions/base/functions.py +3 -3
- edu_rdm_integration/stages/collect_data/functions/base/helpers.py +5 -5
- edu_rdm_integration/stages/collect_data/functions/base/managers.py +6 -6
- edu_rdm_integration/stages/collect_data/functions/base/mixins.py +6 -6
- edu_rdm_integration/stages/collect_data/functions/base/runners.py +3 -3
- edu_rdm_integration/stages/collect_data/functions/calculated/base/caches.py +5 -5
- edu_rdm_integration/stages/collect_data/functions/calculated/base/errors.py +3 -3
- edu_rdm_integration/stages/collect_data/functions/calculated/base/presenters.py +3 -3
- edu_rdm_integration/stages/collect_data/functions/calculated/base/results.py +5 -5
- edu_rdm_integration/stages/collect_data/functions/calculated/base/validators.py +5 -5
- edu_rdm_integration/stages/collect_data/functions/calculated/strategies.py +3 -3
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/caches.py +5 -5
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/errors.py +3 -3
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/presenters.py +3 -3
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/results.py +5 -5
- edu_rdm_integration/stages/collect_data/functions/non_calculated/base/validators.py +5 -5
- edu_rdm_integration/stages/collect_data/functions/non_calculated/strategies.py +3 -3
- edu_rdm_integration/stages/collect_data/models.py +3 -3
- edu_rdm_integration/stages/collect_data/operations.py +3 -3
- edu_rdm_integration/stages/collect_data/tests.py +10 -10
- edu_rdm_integration/stages/export_data/function_templates/function_export_data_template/runners.py-tpl +3 -3
- edu_rdm_integration/stages/export_data/functions/base/caches.py +5 -5
- edu_rdm_integration/stages/export_data/functions/base/consts.py +3 -0
- edu_rdm_integration/stages/export_data/functions/base/errors.py +3 -3
- edu_rdm_integration/stages/export_data/functions/base/functions.py +24 -10
- edu_rdm_integration/stages/export_data/functions/base/helpers.py +5 -5
- edu_rdm_integration/stages/export_data/functions/base/managers.py +3 -3
- edu_rdm_integration/stages/export_data/functions/base/presenters.py +3 -3
- edu_rdm_integration/stages/export_data/functions/base/results.py +5 -5
- edu_rdm_integration/stages/export_data/functions/base/runners.py +3 -3
- edu_rdm_integration/stages/export_data/functions/base/tests.py +161 -0
- edu_rdm_integration/stages/export_data/functions/base/validators.py +5 -5
- edu_rdm_integration/stages/export_data/models.py +4 -4
- edu_rdm_integration/stages/export_data/operations.py +4 -4
- edu_rdm_integration/stages/export_data/strategies.py +3 -3
- {edu_rdm_integration-3.11.2.dist-info → edu_rdm_integration-3.13.0.dist-info}/METADATA +3 -3
- {edu_rdm_integration-3.11.2.dist-info → edu_rdm_integration-3.13.0.dist-info}/RECORD +43 -60
- edu_rdm_integration/adapters/__init__.py +0 -1
- edu_rdm_integration/adapters/apps.py +0 -26
- edu_rdm_integration/adapters/caches.py +0 -56
- edu_rdm_integration/adapters/consts.py +0 -1
- edu_rdm_integration/adapters/enums.py +0 -1
- edu_rdm_integration/adapters/errors.py +0 -24
- edu_rdm_integration/adapters/functions.py +0 -99
- edu_rdm_integration/adapters/helpers.py +0 -63
- edu_rdm_integration/adapters/managers.py +0 -61
- edu_rdm_integration/adapters/presenters.py +0 -37
- edu_rdm_integration/adapters/receivers.py +0 -35
- edu_rdm_integration/adapters/results.py +0 -65
- edu_rdm_integration/adapters/runners.py +0 -140
- edu_rdm_integration/adapters/strategies.py +0 -166
- edu_rdm_integration/adapters/strings.py +0 -1
- edu_rdm_integration/adapters/tests.py +0 -1
- edu_rdm_integration/adapters/validators.py +0 -58
- {edu_rdm_integration-3.11.2.dist-info → edu_rdm_integration-3.13.0.dist-info}/WHEEL +0 -0
- {edu_rdm_integration-3.11.2.dist-info → edu_rdm_integration-3.13.0.dist-info}/licenses/LICENSE +0 -0
- {edu_rdm_integration-3.11.2.dist-info → edu_rdm_integration-3.13.0.dist-info}/top_level.txt +0 -0
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
from abc import (
|
|
2
|
-
ABCMeta,
|
|
3
|
-
)
|
|
4
|
-
|
|
5
|
-
from function_tools.results import (
|
|
6
|
-
BaseRunnableResult,
|
|
7
|
-
)
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
class WebEduRunnerResult(BaseRunnableResult, metaclass=ABCMeta):
|
|
11
|
-
"""Базовый класс результатов работы исполнителей функций продуктов Образования.
|
|
12
|
-
|
|
13
|
-
Предоставляет базовую структуру для представления результатов выполнения
|
|
14
|
-
исполнителей (runners) в контексте образовательных продуктов. Наследует
|
|
15
|
-
функциональность BaseRunnableResult и адаптирует её для специфики
|
|
16
|
-
образовательной системы.
|
|
17
|
-
|
|
18
|
-
Основные возможности:
|
|
19
|
-
- Хранение результатов выполнения исполнителей
|
|
20
|
-
- Доступ к данным результата и метаданным
|
|
21
|
-
- Поддержка цепочки обработки результатов
|
|
22
|
-
- Интеграция с системой логирования
|
|
23
|
-
|
|
24
|
-
Note:
|
|
25
|
-
- Является абстрактным классом
|
|
26
|
-
- Требует реализации в конкретных классах результатов
|
|
27
|
-
- Поддерживает стандартные операции с результатами
|
|
28
|
-
- Интегрируется с системой обработки ошибок
|
|
29
|
-
- Обеспечивает единообразную обработку результатов
|
|
30
|
-
|
|
31
|
-
See Also:
|
|
32
|
-
- BaseRunnableResult: базовый класс для результатов исполнителей
|
|
33
|
-
- WebEduRunner: исполнитель функций образовательных продуктов
|
|
34
|
-
- WebEduFunctionResult: результаты функций образовательных продуктов
|
|
35
|
-
"""
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
class WebEduFunctionResult(BaseRunnableResult, metaclass=ABCMeta):
|
|
39
|
-
"""Базовый класс результатов функций продуктов Образования.
|
|
40
|
-
|
|
41
|
-
Предоставляет базовую структуру для представления результатов выполнения
|
|
42
|
-
функций в контексте образовательных продуктов. Наследует функциональность
|
|
43
|
-
BaseRunnableResult и адаптирует её для специфики бизнес-функций
|
|
44
|
-
образовательной системы.
|
|
45
|
-
|
|
46
|
-
Основные возможности:
|
|
47
|
-
- Хранение результатов выполнения функций
|
|
48
|
-
- Структурированное представление данных
|
|
49
|
-
- Поддержка метаданных и контекста выполнения
|
|
50
|
-
- Валидация результатов бизнес-функций
|
|
51
|
-
- Интеграция с системой отчетности
|
|
52
|
-
|
|
53
|
-
Note:
|
|
54
|
-
- Является абстрактным классом
|
|
55
|
-
- Требует реализации в конкретных классах результатов
|
|
56
|
-
- Поддерживает различные типы данных результатов
|
|
57
|
-
- Учитывает бизнес-правила образовательной системы
|
|
58
|
-
- Интегрируется с системой аудита
|
|
59
|
-
- Обеспечивает прослеживаемость выполнения функций
|
|
60
|
-
|
|
61
|
-
See Also:
|
|
62
|
-
- BaseRunnableResult: базовый класс для результатов
|
|
63
|
-
- WebEduRunnerResult: результаты исполнителей
|
|
64
|
-
- WebEduResultPresenter: презентер результатов
|
|
65
|
-
"""
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
"""Исполнители (runners) для функций интеграции с продуктами Образования.
|
|
2
|
-
|
|
3
|
-
Этот модуль содержит классы исполнителей, которые отвечают за запуск и управление
|
|
4
|
-
выполнением функций обработки данных. Исполнители обеспечивают:
|
|
5
|
-
- Подготовку и валидацию входных данных
|
|
6
|
-
- Управление жизненным циклом функций
|
|
7
|
-
- Логирование процесса выполнения
|
|
8
|
-
- Обработку результатов и ошибок
|
|
9
|
-
"""
|
|
10
|
-
|
|
11
|
-
from abc import (
|
|
12
|
-
ABCMeta,
|
|
13
|
-
)
|
|
14
|
-
|
|
15
|
-
from educommon import (
|
|
16
|
-
logger,
|
|
17
|
-
)
|
|
18
|
-
from function_tools.runners import (
|
|
19
|
-
BaseRunner,
|
|
20
|
-
GlobalHelperRunner,
|
|
21
|
-
)
|
|
22
|
-
|
|
23
|
-
from edu_rdm_integration.adapters.helpers import (
|
|
24
|
-
WebEduRunnerHelper,
|
|
25
|
-
)
|
|
26
|
-
from edu_rdm_integration.adapters.results import (
|
|
27
|
-
WebEduRunnerResult,
|
|
28
|
-
)
|
|
29
|
-
from edu_rdm_integration.adapters.validators import (
|
|
30
|
-
WebEduRunnerValidator,
|
|
31
|
-
)
|
|
32
|
-
from edu_rdm_integration.core.consts import (
|
|
33
|
-
LOGS_DELIMITER,
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
class WebEduRunner(BaseRunner, metaclass=ABCMeta):
|
|
38
|
-
"""Базовый класс исполнителей функций продуктов Образования.
|
|
39
|
-
|
|
40
|
-
Предоставляет основную функциональность для запуска и управления
|
|
41
|
-
выполнением функций обработки данных. Включает:
|
|
42
|
-
- Подготовку и валидацию входных параметров
|
|
43
|
-
- Логирование процесса выполнения
|
|
44
|
-
- Обработку результатов и ошибок
|
|
45
|
-
- Управление очередью выполнения
|
|
46
|
-
|
|
47
|
-
Attributes:
|
|
48
|
-
helper (WebEduRunnerHelper): Помощник для вспомогательных операций
|
|
49
|
-
validator (WebEduRunnerValidator): Валидатор входных данных
|
|
50
|
-
result (WebEduRunnerResult): Объект для хранения результатов
|
|
51
|
-
"""
|
|
52
|
-
|
|
53
|
-
def _prepare_helper_class(self) -> type[WebEduRunnerHelper]:
|
|
54
|
-
"""Возвращает класс помощника исполнителя.
|
|
55
|
-
|
|
56
|
-
Returns:
|
|
57
|
-
type[WebEduRunnerHelper]: Класс помощника для вспомогательных операций
|
|
58
|
-
при выполнении функций
|
|
59
|
-
"""
|
|
60
|
-
return WebEduRunnerHelper
|
|
61
|
-
|
|
62
|
-
def _prepare_validator_class(self) -> type[WebEduRunnerValidator]:
|
|
63
|
-
"""Возвращает класс валидатора исполнителя.
|
|
64
|
-
|
|
65
|
-
Returns:
|
|
66
|
-
type[WebEduRunnerValidator]: Класс для валидации входных параметров
|
|
67
|
-
и проверки состояния исполнителя
|
|
68
|
-
"""
|
|
69
|
-
return WebEduRunnerValidator
|
|
70
|
-
|
|
71
|
-
def _prepare_result_class(self) -> type[WebEduRunnerResult]:
|
|
72
|
-
"""Возвращает класс результата исполнителя.
|
|
73
|
-
|
|
74
|
-
Returns:
|
|
75
|
-
type[WebEduRunnerResult]: Класс для хранения результатов выполнения
|
|
76
|
-
функций и возможных ошибок
|
|
77
|
-
"""
|
|
78
|
-
return WebEduRunnerResult
|
|
79
|
-
|
|
80
|
-
def _prepare_runnable_before_enqueue(self, runnable, *args, **kwargs):
|
|
81
|
-
"""Подготовка запускаемого объекта перед добавлением в очередь.
|
|
82
|
-
|
|
83
|
-
Выполняет базовую подготовку объекта и добавляет логирование
|
|
84
|
-
для отслеживания процесса выполнения.
|
|
85
|
-
|
|
86
|
-
Args:
|
|
87
|
-
runnable: Объект для выполнения
|
|
88
|
-
*args: Дополнительные позиционные аргументы
|
|
89
|
-
**kwargs: Дополнительные именованные аргументы
|
|
90
|
-
"""
|
|
91
|
-
super()._prepare_runnable_before_enqueue(runnable, *args, **kwargs)
|
|
92
|
-
|
|
93
|
-
logger.info(f'{LOGS_DELIMITER * 2}enqueue {runnable.__class__.__name__}..')
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
class WebEduGlobalHelperRunner(GlobalHelperRunner, metaclass=ABCMeta):
|
|
97
|
-
"""Базовый класс исполнителей с глобальным помощником.
|
|
98
|
-
|
|
99
|
-
Расширяет функциональность WebEduRunner, добавляя поддержку
|
|
100
|
-
глобального помощника. Это позволяет:
|
|
101
|
-
- Использовать общие вспомогательные методы между разными исполнителями
|
|
102
|
-
- Кэшировать часто используемые данные
|
|
103
|
-
- Оптимизировать использование ресурсов
|
|
104
|
-
|
|
105
|
-
Note:
|
|
106
|
-
Глобальный помощник должен быть потокобезопасным, так как может
|
|
107
|
-
использоваться одновременно несколькими исполнителями.
|
|
108
|
-
|
|
109
|
-
Attributes:
|
|
110
|
-
helper (WebEduRunnerHelper): Глобальный помощник для всех исполнителей
|
|
111
|
-
validator (WebEduRunnerValidator): Валидатор входных данных
|
|
112
|
-
result (WebEduRunnerResult): Объект для хранения результатов
|
|
113
|
-
"""
|
|
114
|
-
|
|
115
|
-
def _prepare_helper_class(self) -> type[WebEduRunnerHelper]:
|
|
116
|
-
"""Возвращает класс глобального помощника.
|
|
117
|
-
|
|
118
|
-
Returns:
|
|
119
|
-
type[WebEduRunnerHelper]: Класс помощника, который будет использоваться
|
|
120
|
-
всеми исполнителями
|
|
121
|
-
"""
|
|
122
|
-
return WebEduRunnerHelper
|
|
123
|
-
|
|
124
|
-
def _prepare_validator_class(self) -> type[WebEduRunnerValidator]:
|
|
125
|
-
"""Возвращает класс валидатора исполнителя.
|
|
126
|
-
|
|
127
|
-
Returns:
|
|
128
|
-
type[WebEduRunnerValidator]: Класс для валидации входных параметров
|
|
129
|
-
и проверки состояния исполнителя
|
|
130
|
-
"""
|
|
131
|
-
return WebEduRunnerValidator
|
|
132
|
-
|
|
133
|
-
def _prepare_result_class(self) -> type[WebEduRunnerResult]:
|
|
134
|
-
"""Возвращает класс результата исполнителя.
|
|
135
|
-
|
|
136
|
-
Returns:
|
|
137
|
-
type[WebEduRunnerResult]: Класс для хранения результатов выполнения
|
|
138
|
-
функций и возможных ошибок
|
|
139
|
-
"""
|
|
140
|
-
return WebEduRunnerResult
|
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
"""Стратегии реализации функций для интеграции с продуктами Образования.
|
|
2
|
-
|
|
3
|
-
Этот модуль содержит классы стратегий, определяющие способы реализации функций
|
|
4
|
-
для работы с продуктами Образования. Стратегии определяют конфигурацию классов
|
|
5
|
-
для различных компонентов системы: менеджеров, исполнителей, валидаторов и т.д.
|
|
6
|
-
"""
|
|
7
|
-
|
|
8
|
-
from abc import (
|
|
9
|
-
ABCMeta,
|
|
10
|
-
)
|
|
11
|
-
from typing import (
|
|
12
|
-
Optional,
|
|
13
|
-
)
|
|
14
|
-
|
|
15
|
-
from function_tools.strategies import (
|
|
16
|
-
FunctionImplementationStrategy,
|
|
17
|
-
)
|
|
18
|
-
|
|
19
|
-
from edu_rdm_integration.adapters.caches import (
|
|
20
|
-
WebEduFunctionCacheStorage,
|
|
21
|
-
WebEduRunnerCacheStorage,
|
|
22
|
-
)
|
|
23
|
-
from edu_rdm_integration.adapters.errors import (
|
|
24
|
-
WebEduError,
|
|
25
|
-
)
|
|
26
|
-
from edu_rdm_integration.adapters.functions import (
|
|
27
|
-
WebEduFunction,
|
|
28
|
-
WebEduLazySavingPredefinedQueueFunction,
|
|
29
|
-
)
|
|
30
|
-
from edu_rdm_integration.adapters.helpers import (
|
|
31
|
-
WebEduFunctionHelper,
|
|
32
|
-
WebEduRunnerHelper,
|
|
33
|
-
)
|
|
34
|
-
from edu_rdm_integration.adapters.managers import (
|
|
35
|
-
WebEduRunnerManager,
|
|
36
|
-
)
|
|
37
|
-
from edu_rdm_integration.adapters.presenters import (
|
|
38
|
-
WebEduResultPresenter,
|
|
39
|
-
)
|
|
40
|
-
from edu_rdm_integration.adapters.results import (
|
|
41
|
-
WebEduFunctionResult,
|
|
42
|
-
WebEduRunnerResult,
|
|
43
|
-
)
|
|
44
|
-
from edu_rdm_integration.adapters.runners import (
|
|
45
|
-
WebEduRunner,
|
|
46
|
-
)
|
|
47
|
-
from edu_rdm_integration.adapters.validators import (
|
|
48
|
-
WebEduFunctionValidator,
|
|
49
|
-
WebEduRunnerValidator,
|
|
50
|
-
)
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
class WebEduFunctionImplementationStrategy(FunctionImplementationStrategy, metaclass=ABCMeta):
|
|
54
|
-
"""Базовая стратегия реализации функций для продуктов Образования.
|
|
55
|
-
|
|
56
|
-
Определяет основную конфигурацию классов для всех компонентов системы:
|
|
57
|
-
- Менеджеры для управления выполнением функций
|
|
58
|
-
- Исполнители (runners) для запуска функций
|
|
59
|
-
- Помощники (helpers) для вспомогательных операций
|
|
60
|
-
- Валидаторы для проверки данных
|
|
61
|
-
- Кэши для хранения промежуточных результатов
|
|
62
|
-
- Обработчики ошибок и результатов
|
|
63
|
-
|
|
64
|
-
Все методы в этом классе отвечают за установку конкретных реализаций
|
|
65
|
-
различных компонентов системы.
|
|
66
|
-
"""
|
|
67
|
-
|
|
68
|
-
def _prepare_manager_class(self):
|
|
69
|
-
"""Устанавливает класс менеджера для управления выполнением функций."""
|
|
70
|
-
self._manager_class = WebEduRunnerManager
|
|
71
|
-
|
|
72
|
-
def _prepare_runner_class(self):
|
|
73
|
-
"""Устанавливает класс исполнителя для запуска функций."""
|
|
74
|
-
self._runner_class = WebEduRunner
|
|
75
|
-
|
|
76
|
-
def _prepare_function_class(self):
|
|
77
|
-
"""Устанавливает базовый класс функции для обработки данных."""
|
|
78
|
-
self._function_class = WebEduFunction
|
|
79
|
-
|
|
80
|
-
def _prepare_runner_helper_class(self):
|
|
81
|
-
"""Устанавливает класс помощника для исполнителя функций."""
|
|
82
|
-
self._runner_helper_class = WebEduRunnerHelper
|
|
83
|
-
|
|
84
|
-
def _prepare_function_helper_class(self):
|
|
85
|
-
"""Устанавливает класс помощника для функций обработки данных."""
|
|
86
|
-
self._function_helper_class = WebEduFunctionHelper
|
|
87
|
-
|
|
88
|
-
def _prepare_runner_validator_class(self):
|
|
89
|
-
"""Устанавливает класс валидатора для проверки параметров исполнителя."""
|
|
90
|
-
self._runner_validator_class = WebEduRunnerValidator
|
|
91
|
-
|
|
92
|
-
def _prepare_function_validator_class(self):
|
|
93
|
-
"""Устанавливает класс валидатора для проверки данных функции."""
|
|
94
|
-
self._function_validator_class = WebEduFunctionValidator
|
|
95
|
-
|
|
96
|
-
def _prepare_runner_cache_storage_class(self):
|
|
97
|
-
"""Устанавливает класс хранилища кэша для исполнителя."""
|
|
98
|
-
self._runner_cache_storage_class = WebEduRunnerCacheStorage
|
|
99
|
-
|
|
100
|
-
def _prepare_function_cache_storage_class(self):
|
|
101
|
-
"""Устанавливает класс хранилища кэша для функции."""
|
|
102
|
-
self._function_cache_storage_class = WebEduFunctionCacheStorage
|
|
103
|
-
|
|
104
|
-
def _prepare_error_class(self):
|
|
105
|
-
"""Устанавливает класс для обработки ошибок."""
|
|
106
|
-
self._error_class = WebEduError
|
|
107
|
-
|
|
108
|
-
def _prepare_runner_result_class(self):
|
|
109
|
-
"""Устанавливает класс для хранения результатов работы исполнителя."""
|
|
110
|
-
self._runner_result_class = WebEduRunnerResult
|
|
111
|
-
|
|
112
|
-
def _prepare_function_result_class(self):
|
|
113
|
-
"""Устанавливает класс для хранения результатов работы функции."""
|
|
114
|
-
self._function_result_class = WebEduFunctionResult
|
|
115
|
-
|
|
116
|
-
def _prepare_result_presenter_class(self):
|
|
117
|
-
"""Устанавливает класс для представления результатов."""
|
|
118
|
-
self._result_presenter_class = WebEduResultPresenter
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
class WebEduSyncBaseRunnerLazySavingPredefinedQueueFunctionImplementationStrategy(
|
|
122
|
-
WebEduFunctionImplementationStrategy, metaclass=ABCMeta
|
|
123
|
-
):
|
|
124
|
-
"""Стратегия создания функции с отложенным сохранением и предустановленной очередью.
|
|
125
|
-
|
|
126
|
-
Расширяет базовую стратегию, добавляя специфическую логику для:
|
|
127
|
-
- Отложенного сохранения данных (lazy saving)
|
|
128
|
-
- Работы с предустановленной очередью объектов
|
|
129
|
-
- Синхронного выполнения операций
|
|
130
|
-
|
|
131
|
-
Сохранение данных производится только после успешного выполнения всех операций
|
|
132
|
-
функции, что обеспечивает целостность данных и атомарность операций.
|
|
133
|
-
"""
|
|
134
|
-
|
|
135
|
-
def _prepare_key(self) -> str:
|
|
136
|
-
"""Возвращает уникальный идентификатор стратегии.
|
|
137
|
-
|
|
138
|
-
Returns:
|
|
139
|
-
str: Ключ для идентификации стратегии в системе
|
|
140
|
-
"""
|
|
141
|
-
return 'WEB_EDU_SYNC_LAZY_SAVING_FUNCTION'
|
|
142
|
-
|
|
143
|
-
def _prepare_title(self) -> str:
|
|
144
|
-
"""Возвращает название стратегии.
|
|
145
|
-
|
|
146
|
-
Returns:
|
|
147
|
-
str: Человекочитаемое описание стратегии
|
|
148
|
-
"""
|
|
149
|
-
return (
|
|
150
|
-
'Стратегия создания функции с отложенным сохранением и предустановленной очередью объектов на сохранение '
|
|
151
|
-
'продуктов Образования. Сохранение производится после удачной работы функции'
|
|
152
|
-
)
|
|
153
|
-
|
|
154
|
-
@classmethod
|
|
155
|
-
def _prepare_function_template_name(cls) -> Optional[str]:
|
|
156
|
-
"""Формирование названия шаблона создания функции.
|
|
157
|
-
|
|
158
|
-
Returns:
|
|
159
|
-
Optional[str]: Имя шаблона для создания функции или None,
|
|
160
|
-
если шаблон не требуется
|
|
161
|
-
"""
|
|
162
|
-
return 'function_sync_template'
|
|
163
|
-
|
|
164
|
-
def _prepare_function_class(self):
|
|
165
|
-
"""Устанавливает класс функции с поддержкой отложенного сохранения."""
|
|
166
|
-
self._function_class = WebEduLazySavingPredefinedQueueFunction
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
# В этом модуле должны располагаться все сообщения пользователю, сообщения для формирования логов
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
# Реализуйте свои unit-тесты здесь
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
"""Классы для валидации данных в системе интеграции.
|
|
2
|
-
|
|
3
|
-
Этот модуль содержит базовые классы валидаторов, которые обеспечивают
|
|
4
|
-
проверку корректности данных на разных уровнях системы:
|
|
5
|
-
- Валидация входных параметров функций
|
|
6
|
-
- Проверка состояния исполнителей
|
|
7
|
-
- Валидация результатов обработки
|
|
8
|
-
- Проверка бизнес-правил
|
|
9
|
-
"""
|
|
10
|
-
|
|
11
|
-
from abc import (
|
|
12
|
-
ABCMeta,
|
|
13
|
-
)
|
|
14
|
-
|
|
15
|
-
from function_tools.validators import (
|
|
16
|
-
BaseValidator,
|
|
17
|
-
)
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
class WebEduRunnerValidator(BaseValidator, metaclass=ABCMeta):
|
|
21
|
-
"""Базовый класс для валидации исполнителей функций.
|
|
22
|
-
|
|
23
|
-
Предоставляет механизмы проверки:
|
|
24
|
-
- Корректности конфигурации исполнителя
|
|
25
|
-
- Доступности необходимых ресурсов
|
|
26
|
-
- Состояния исполнителя перед запуском
|
|
27
|
-
- Валидности результатов выполнения
|
|
28
|
-
|
|
29
|
-
Note:
|
|
30
|
-
Конкретные реализации должны определить специфичные
|
|
31
|
-
правила валидации для каждого типа исполнителя.
|
|
32
|
-
|
|
33
|
-
Attributes:
|
|
34
|
-
errors (list): Список обнаруженных ошибок
|
|
35
|
-
warnings (list): Список предупреждений
|
|
36
|
-
"""
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
class WebEduFunctionValidator(BaseValidator, metaclass=ABCMeta):
|
|
40
|
-
"""Базовый класс для валидации функций обработки данных.
|
|
41
|
-
|
|
42
|
-
Предоставляет механизмы проверки:
|
|
43
|
-
- Входных параметров функции
|
|
44
|
-
- Формата данных
|
|
45
|
-
- Бизнес-правил
|
|
46
|
-
- Результатов обработки
|
|
47
|
-
|
|
48
|
-
Note:
|
|
49
|
-
При реализации валидаторов для конкретных функций следует:
|
|
50
|
-
- Определить специфичные правила проверки
|
|
51
|
-
- Добавить проверку бизнес-ограничений
|
|
52
|
-
- Реализовать валидацию форматов данных
|
|
53
|
-
|
|
54
|
-
Attributes:
|
|
55
|
-
errors (list): Список обнаруженных ошибок
|
|
56
|
-
warnings (list): Список предупреждений
|
|
57
|
-
context (dict): Контекст валидации
|
|
58
|
-
"""
|
|
File without changes
|
{edu_rdm_integration-3.11.2.dist-info → edu_rdm_integration-3.13.0.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
|
File without changes
|