orionis 0.90.0__tar.gz → 0.93.0__tar.gz
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.
- {orionis-0.90.0/orionis.egg-info → orionis-0.93.0}/PKG-INFO +1 -1
- orionis-0.90.0/orionis/contracts/console/tasks/i_schedule.py → orionis-0.93.0/orionis/contracts/services/commands/i_schedule_service.py +1 -1
- {orionis-0.90.0 → orionis-0.93.0}/orionis/framework.py +1 -1
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/app.py +6 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/commands/schedule_work.py +12 -6
- orionis-0.93.0/orionis/luminate/providers/commands/scheduler_provider.py +19 -0
- orionis-0.90.0/orionis/luminate/console/tasks/scheduler.py → orionis-0.93.0/orionis/luminate/services/commands/scheduler_service.py +5 -8
- {orionis-0.90.0 → orionis-0.93.0/orionis.egg-info}/PKG-INFO +1 -1
- {orionis-0.90.0 → orionis-0.93.0}/orionis.egg-info/SOURCES.txt +3 -4
- orionis-0.90.0/tests/__init__.py +0 -0
- orionis-0.90.0/tests/tools/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/LICENCE +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/MANIFEST.in +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/README.md +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/cli_manager.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/bootstrap/i_command_bootstrapper.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/bootstrap/i_config_bootstrapper.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/bootstrap/i_environment_bootstrapper.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/config/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/config/i_config.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/base/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/base/i_command.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/i_command_filter.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/i_kernel.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/i_parser.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/i_task_manager.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/output/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/output/i_console.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/output/i_executor.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/console/output/i_progress_bar.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/container/i_container.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/container/i_types.py +0 -0
- {orionis-0.90.0/orionis/contracts/console/tasks → orionis-0.93.0/orionis/contracts/facades}/__init__.py +0 -0
- {orionis-0.90.0/orionis/contracts/facades → orionis-0.93.0/orionis/contracts/facades/commands}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/facades/commands/i_commands_facade.py +0 -0
- {orionis-0.90.0/orionis/contracts/facades/commands → orionis-0.93.0/orionis/contracts/facades/config}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/facades/config/i_config_facade.py +0 -0
- {orionis-0.90.0/orionis/contracts/facades/config → orionis-0.93.0/orionis/contracts/facades/environment}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/facades/environment/i_environment_facade.py +0 -0
- {orionis-0.90.0/orionis/contracts/facades/environment → orionis-0.93.0/orionis/contracts/facades/files}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/facades/files/i_path_facade.py +0 -0
- {orionis-0.90.0/orionis/contracts/facades/files → orionis-0.93.0/orionis/contracts/facades/log}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/facades/log/i_log_facade.py +0 -0
- {orionis-0.90.0/orionis/contracts/facades/log → orionis-0.93.0/orionis/contracts/facades/tests}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/facades/tests/i_tests_facade.py +0 -0
- {orionis-0.90.0/orionis/contracts/facades/tests → orionis-0.93.0/orionis/contracts/installer}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/installer/i_installer_manager.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/installer/i_installer_output.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/installer/i_installer_setup.py +0 -0
- {orionis-0.90.0/orionis/contracts/installer → orionis-0.93.0/orionis/contracts/providers}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/providers/i_service_provider.py +0 -0
- {orionis-0.90.0/orionis/contracts/providers → orionis-0.93.0/orionis/contracts/services}/__init__.py +0 -0
- {orionis-0.90.0/orionis/contracts/services → orionis-0.93.0/orionis/contracts/services/commands}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/commands/i_reactor_commands_service.py +0 -0
- {orionis-0.90.0/orionis/contracts/services/commands → orionis-0.93.0/orionis/contracts/services/config}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/config/i_config_service.py +0 -0
- {orionis-0.90.0/orionis/contracts/services/config → orionis-0.93.0/orionis/contracts/services/environment}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/environment/i_environment_service.py +0 -0
- {orionis-0.90.0/orionis/contracts/services/environment → orionis-0.93.0/orionis/contracts/services/files}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/files/i_path_resolver_service.py +0 -0
- {orionis-0.90.0/orionis/contracts/services/files → orionis-0.93.0/orionis/contracts/services/log}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/log/i_log_service.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/support/i_exception_to_dict.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/support/i_reflection.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/support/i_std.py +0 -0
- {orionis-0.90.0/orionis/contracts/services/log → orionis-0.93.0/orionis/installer}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/installer/installer_manager.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/installer/installer_output.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/installer/installer_setup.py +0 -0
- {orionis-0.90.0/orionis/installer → orionis-0.93.0/orionis/luminate}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/app_context.py +0 -0
- {orionis-0.90.0/orionis/luminate → orionis-0.93.0/orionis/luminate/bootstrap}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/bootstrap/command_bootstrapper.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/bootstrap/config_bootstrapper.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/bootstrap/environment_bootstrapper.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/bootstrap/exception_bootstrapper.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/bootstrap/service_providers_bootstrapper.py +0 -0
- {orionis-0.90.0/orionis/luminate/bootstrap → orionis-0.93.0/orionis/luminate/config}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/app.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/auth.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/cache.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/cors.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/database.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/filesystems.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/logging.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/mail.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/queue.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/config/session.py +0 -0
- {orionis-0.90.0/orionis/luminate/config → orionis-0.93.0/orionis/luminate/console}/__init__.py +0 -0
- {orionis-0.90.0/orionis/luminate/console → orionis-0.93.0/orionis/luminate/console/base}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/base/command.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/command_filter.py +0 -0
- {orionis-0.90.0/orionis/luminate/console/base → orionis-0.93.0/orionis/luminate/console/commands}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/commands/cache_clear.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/commands/help.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/commands/tests.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/commands/version.py +0 -0
- {orionis-0.90.0/orionis/luminate/console/commands → orionis-0.93.0/orionis/luminate/console/exceptions}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/exceptions/cli_exception.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/kernel.py +0 -0
- {orionis-0.90.0/orionis/luminate/console/exceptions → orionis-0.93.0/orionis/luminate/console/output}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/output/console.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/output/executor.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/output/progress_bar.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/output/styles.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/console/parser.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/container/container.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/container/exception.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/container/types.py +0 -0
- {orionis-0.90.0/orionis/luminate/console/output → orionis-0.93.0/orionis/luminate/facades}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/app.py +0 -0
- {orionis-0.90.0/orionis/luminate/console/tasks → orionis-0.93.0/orionis/luminate/facades/commands}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/commands/commands_facade.py +0 -0
- {orionis-0.90.0/orionis/luminate/facades → orionis-0.93.0/orionis/luminate/facades/config}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/config/config_facade.py +0 -0
- {orionis-0.90.0/orionis/luminate/facades/commands → orionis-0.93.0/orionis/luminate/facades/environment}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/environment/environment_facade.py +0 -0
- {orionis-0.90.0/orionis/luminate/facades/config → orionis-0.93.0/orionis/luminate/facades/files}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/files/path_facade.py +0 -0
- {orionis-0.90.0/orionis/luminate/facades/environment → orionis-0.93.0/orionis/luminate/facades/log}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/log/log_facade.py +0 -0
- {orionis-0.90.0/orionis/luminate/facades/files → orionis-0.93.0/orionis/luminate/facades/tests}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/tests/tests_facade.py +0 -0
- {orionis-0.90.0/orionis/luminate/facades/log → orionis-0.93.0/orionis/luminate/patterns}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/patterns/singleton.py +0 -0
- {orionis-0.90.0/orionis/luminate/facades/tests → orionis-0.93.0/orionis/luminate/providers}/__init__.py +0 -0
- {orionis-0.90.0/orionis/luminate/patterns → orionis-0.93.0/orionis/luminate/providers/commands}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/providers/commands/reactor_commands_service_provider.py +0 -0
- {orionis-0.90.0/orionis/luminate/providers → orionis-0.93.0/orionis/luminate/providers/config}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/providers/config/config_service_provider.py +0 -0
- {orionis-0.90.0/orionis/luminate/providers/commands → orionis-0.93.0/orionis/luminate/providers/environment}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/providers/environment/environment__service_provider.py +0 -0
- {orionis-0.90.0/orionis/luminate/providers/config → orionis-0.93.0/orionis/luminate/providers/log}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/providers/log/log_service_provider.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/providers/service_provider.py +0 -0
- {orionis-0.90.0/orionis/luminate/providers/environment → orionis-0.93.0/orionis/luminate/services}/__init__.py +0 -0
- {orionis-0.90.0/orionis/luminate/providers/log → orionis-0.93.0/orionis/luminate/services/commands}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/services/commands/reactor_commands_service.py +0 -0
- {orionis-0.90.0/orionis/luminate/services → orionis-0.93.0/orionis/luminate/services/config}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/services/config/config_service.py +0 -0
- {orionis-0.90.0/orionis/luminate/services/commands → orionis-0.93.0/orionis/luminate/services/environment}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/services/environment/environment_service.py +0 -0
- {orionis-0.90.0/orionis/luminate/services/config → orionis-0.93.0/orionis/luminate/services/files}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/services/files/path_resolver_service.py +0 -0
- {orionis-0.90.0/orionis/luminate/services/environment → orionis-0.93.0/orionis/luminate/services/log}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/services/log/log_service.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/support/dot_dict.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/support/exception_to_dict.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/support/reflection.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/support/std.py +0 -0
- {orionis-0.90.0/orionis/luminate/services/files → orionis-0.93.0/orionis/luminate/test}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/test/exception.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/test/unit_test.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/ascii/icon.ascii +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/ascii/info.ascii +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/bg/galaxy.jpg +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/favicon/OrionisFrameworkFavicon.png +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/logos/OrionisFramework.jpg +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/logos/OrionisFramework.png +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/logos/OrionisFramework.psd +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/logos/OrionisFramework2.png +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis/static/logos/OrionisFramework3.png +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis.egg-info/dependency_links.txt +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis.egg-info/entry_points.txt +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis.egg-info/requires.txt +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/orionis.egg-info/top_level.txt +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/setup.cfg +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/setup.py +0 -0
- {orionis-0.90.0/orionis/luminate/services/log → orionis-0.93.0/tests}/__init__.py +0 -0
- {orionis-0.90.0/orionis/luminate/test → orionis-0.93.0/tests/tools}/__init__.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/tests/tools/class_example.py +0 -0
- {orionis-0.90.0 → orionis-0.93.0}/tests/tools/test_reflection.py +0 -0
@@ -5,6 +5,7 @@ from orionis.luminate.bootstrap.command_bootstrapper import CommandsBootstrapper
|
|
5
5
|
from orionis.luminate.bootstrap.environment_bootstrapper import EnvironmentBootstrapper
|
6
6
|
from orionis.luminate.patterns.singleton import SingletonMeta
|
7
7
|
from orionis.luminate.providers.commands.reactor_commands_service_provider import ReactorCommandsServiceProvider
|
8
|
+
from orionis.luminate.providers.commands.scheduler_provider import ScheduleServiceProvider
|
8
9
|
from orionis.luminate.providers.environment.environment__service_provider import EnvironmentServiceProvider
|
9
10
|
from orionis.luminate.providers.config.config_service_provider import ConfigServiceProvider
|
10
11
|
from orionis.luminate.providers.log.log_service_provider import LogServiceProvider
|
@@ -265,6 +266,11 @@ class Application(metaclass=SingletonMeta):
|
|
265
266
|
_log_provider.register()
|
266
267
|
_log_provider.boot()
|
267
268
|
|
269
|
+
# Load the scheduler provider, which is responsible for managing scheduled tasks.
|
270
|
+
_schedule_provider = ScheduleServiceProvider(app=self.container)
|
271
|
+
_schedule_provider.register()
|
272
|
+
_schedule_provider.boot()
|
273
|
+
|
268
274
|
# Load the commands provider, which is responsible for executing and managing CLI commands.
|
269
275
|
# Developers can interact with it through the facade "orionis.luminate.facades.commands.commands_facade.Commands".
|
270
276
|
_commands_provider = ReactorCommandsServiceProvider(app=self.container)
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import importlib
|
2
2
|
from orionis.luminate.console.base.command import BaseCommand
|
3
3
|
from orionis.luminate.console.exceptions.cli_exception import CLIOrionisRuntimeError
|
4
|
-
from orionis.luminate.console.tasks.scheduler import Schedule
|
5
4
|
from orionis.contracts.console.i_task_manager import ITaskManager
|
5
|
+
from orionis.luminate.services.commands.scheduler_service import ScheduleService
|
6
6
|
|
7
7
|
class ScheduleWorkCommand(BaseCommand):
|
8
8
|
"""
|
@@ -18,6 +18,15 @@ class ScheduleWorkCommand(BaseCommand):
|
|
18
18
|
# A brief description of the command.
|
19
19
|
description = "Starts the scheduled tasks."
|
20
20
|
|
21
|
+
def __init__(self, schedule:ScheduleService) -> None:
|
22
|
+
"""
|
23
|
+
Initialize a new instance of the ScheduleWorkCommand class.
|
24
|
+
|
25
|
+
Args:
|
26
|
+
schedule (ScheduleService): The schedule instance to use for scheduling tasks.
|
27
|
+
"""
|
28
|
+
self.schedule = schedule
|
29
|
+
|
21
30
|
def handle(self) -> None:
|
22
31
|
"""
|
23
32
|
Execute the scheduled tasks.
|
@@ -33,17 +42,14 @@ class ScheduleWorkCommand(BaseCommand):
|
|
33
42
|
"""
|
34
43
|
try:
|
35
44
|
|
36
|
-
# Initialize a new Schedule instance.
|
37
|
-
schedule = Schedule()
|
38
|
-
|
39
45
|
# Create an instance of the TaskManager to manage the scheduling.
|
40
46
|
tasks_manager = importlib.import_module("app.console.tasks_manager")
|
41
47
|
TaskManager = getattr(tasks_manager, "TaskManager")
|
42
48
|
kernel: ITaskManager = TaskManager()
|
43
|
-
kernel.schedule(schedule)
|
49
|
+
kernel.schedule(self.schedule)
|
44
50
|
|
45
51
|
# Start running the scheduled tasks using the schedule runner.
|
46
|
-
schedule.start()
|
52
|
+
self.schedule.start()
|
47
53
|
|
48
54
|
except Exception as e:
|
49
55
|
|
@@ -0,0 +1,19 @@
|
|
1
|
+
from orionis.luminate.providers.service_provider import ServiceProvider
|
2
|
+
from orionis.luminate.services.commands.scheduler_service import ScheduleService
|
3
|
+
|
4
|
+
class ScheduleServiceProvider(ServiceProvider):
|
5
|
+
|
6
|
+
def register(self) -> None:
|
7
|
+
"""
|
8
|
+
Registers services or bindings into the given container.
|
9
|
+
"""
|
10
|
+
self._container_id = self.app.bind(ScheduleService)
|
11
|
+
|
12
|
+
def boot(self,) -> None:
|
13
|
+
"""
|
14
|
+
Boot the service provider.
|
15
|
+
|
16
|
+
This method is intended to be overridden by subclasses to perform
|
17
|
+
any necessary bootstrapping or initialization tasks.
|
18
|
+
"""
|
19
|
+
self.app.make(self._container_id)
|
@@ -7,11 +7,11 @@ from typing import Any
|
|
7
7
|
from apscheduler.schedulers.background import BackgroundScheduler
|
8
8
|
from apscheduler.triggers.cron import CronTrigger
|
9
9
|
from apscheduler.triggers.interval import IntervalTrigger
|
10
|
-
from orionis.contracts.
|
10
|
+
from orionis.contracts.services.commands.i_schedule_service import IScheduleService
|
11
11
|
from orionis.luminate.console.exceptions.cli_exception import CLIOrionisScheduleException
|
12
12
|
from orionis.luminate.facades.commands.commands_facade import Command
|
13
13
|
|
14
|
-
class
|
14
|
+
class ScheduleService(IScheduleService):
|
15
15
|
"""
|
16
16
|
A class that manages the scheduling of tasks using the APScheduler.
|
17
17
|
|
@@ -28,7 +28,7 @@ class Schedule(ISchedule):
|
|
28
28
|
Defines a command to execute.
|
29
29
|
"""
|
30
30
|
|
31
|
-
def __init__(self, logger_level=logging.CRITICAL):
|
31
|
+
def __init__(self, apscheduler_background : BackgroundScheduler, logger_level=logging.CRITICAL):
|
32
32
|
"""
|
33
33
|
Initializes the Schedule object.
|
34
34
|
|
@@ -40,12 +40,12 @@ class Schedule(ISchedule):
|
|
40
40
|
The logging level for the APScheduler logger. Default is `logging.CRITICAL` to suppress most logs.
|
41
41
|
"""
|
42
42
|
logging.getLogger("apscheduler").setLevel(logger_level)
|
43
|
-
self.scheduler =
|
43
|
+
self.scheduler = apscheduler_background
|
44
44
|
self.scheduler.start()
|
45
45
|
self.callback = None
|
46
46
|
self.wait = True
|
47
47
|
|
48
|
-
def command(self, signature: str, vars: dict[str, Any] = {}, *args: Any, **kwargs: Any) -> '
|
48
|
+
def command(self, signature: str, vars: dict[str, Any] = {}, *args: Any, **kwargs: Any) -> 'ScheduleService':
|
49
49
|
"""
|
50
50
|
Defines a Orionis command to be executed.
|
51
51
|
|
@@ -604,12 +604,9 @@ class Schedule(ISchedule):
|
|
604
604
|
Starts the scheduler and stops automatically when there are no more jobs.
|
605
605
|
"""
|
606
606
|
try:
|
607
|
-
# Start the scheduler
|
608
607
|
while self.wait:
|
609
608
|
time.sleep(1)
|
610
609
|
except (KeyboardInterrupt, SystemExit):
|
611
|
-
# Stop the scheduler if it is running
|
612
610
|
if self.scheduler.running:
|
613
611
|
self.scheduler.shutdown()
|
614
|
-
# Exit with status code 1 to indicate an error
|
615
612
|
sys.exit(1)
|
@@ -28,8 +28,6 @@ orionis/contracts/console/output/__init__.py
|
|
28
28
|
orionis/contracts/console/output/i_console.py
|
29
29
|
orionis/contracts/console/output/i_executor.py
|
30
30
|
orionis/contracts/console/output/i_progress_bar.py
|
31
|
-
orionis/contracts/console/tasks/__init__.py
|
32
|
-
orionis/contracts/console/tasks/i_schedule.py
|
33
31
|
orionis/contracts/container/i_container.py
|
34
32
|
orionis/contracts/container/i_types.py
|
35
33
|
orionis/contracts/facades/__init__.py
|
@@ -54,6 +52,7 @@ orionis/contracts/providers/i_service_provider.py
|
|
54
52
|
orionis/contracts/services/__init__.py
|
55
53
|
orionis/contracts/services/commands/__init__.py
|
56
54
|
orionis/contracts/services/commands/i_reactor_commands_service.py
|
55
|
+
orionis/contracts/services/commands/i_schedule_service.py
|
57
56
|
orionis/contracts/services/config/__init__.py
|
58
57
|
orionis/contracts/services/config/i_config_service.py
|
59
58
|
orionis/contracts/services/environment/__init__.py
|
@@ -108,8 +107,6 @@ orionis/luminate/console/output/console.py
|
|
108
107
|
orionis/luminate/console/output/executor.py
|
109
108
|
orionis/luminate/console/output/progress_bar.py
|
110
109
|
orionis/luminate/console/output/styles.py
|
111
|
-
orionis/luminate/console/tasks/__init__.py
|
112
|
-
orionis/luminate/console/tasks/scheduler.py
|
113
110
|
orionis/luminate/container/container.py
|
114
111
|
orionis/luminate/container/exception.py
|
115
112
|
orionis/luminate/container/types.py
|
@@ -133,6 +130,7 @@ orionis/luminate/providers/__init__.py
|
|
133
130
|
orionis/luminate/providers/service_provider.py
|
134
131
|
orionis/luminate/providers/commands/__init__.py
|
135
132
|
orionis/luminate/providers/commands/reactor_commands_service_provider.py
|
133
|
+
orionis/luminate/providers/commands/scheduler_provider.py
|
136
134
|
orionis/luminate/providers/config/__init__.py
|
137
135
|
orionis/luminate/providers/config/config_service_provider.py
|
138
136
|
orionis/luminate/providers/environment/__init__.py
|
@@ -142,6 +140,7 @@ orionis/luminate/providers/log/log_service_provider.py
|
|
142
140
|
orionis/luminate/services/__init__.py
|
143
141
|
orionis/luminate/services/commands/__init__.py
|
144
142
|
orionis/luminate/services/commands/reactor_commands_service.py
|
143
|
+
orionis/luminate/services/commands/scheduler_service.py
|
145
144
|
orionis/luminate/services/config/__init__.py
|
146
145
|
orionis/luminate/services/config/config_service.py
|
147
146
|
orionis/luminate/services/environment/__init__.py
|
orionis-0.90.0/tests/__init__.py
DELETED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/facades/environment/i_environment_facade.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0/orionis/contracts/providers → orionis-0.93.0/orionis/contracts/services}/__init__.py
RENAMED
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/commands/i_reactor_commands_service.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/environment/i_environment_service.py
RENAMED
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/contracts/services/files/i_path_resolver_service.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0/orionis/contracts/services/log → orionis-0.93.0/orionis/installer}/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/bootstrap/service_providers_bootstrapper.py
RENAMED
File without changes
|
{orionis-0.90.0/orionis/luminate/bootstrap → orionis-0.93.0/orionis/luminate/config}/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0/orionis/luminate/config → orionis-0.93.0/orionis/luminate/console}/__init__.py
RENAMED
File without changes
|
{orionis-0.90.0/orionis/luminate/console → orionis-0.93.0/orionis/luminate/console/base}/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/facades/environment/environment_facade.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0/orionis/luminate/facades/log → orionis-0.93.0/orionis/luminate/patterns}/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/providers/config/config_service_provider.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/services/commands/reactor_commands_service.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0 → orionis-0.93.0}/orionis/luminate/services/environment/environment_service.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{orionis-0.90.0/orionis/luminate/services/files → orionis-0.93.0/orionis/luminate/test}/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|