orionis 0.192.0__py3-none-any.whl → 0.194.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.
orionis/framework.py CHANGED
@@ -5,7 +5,7 @@
5
5
  NAME = "orionis"
6
6
 
7
7
  # Current version of the framework
8
- VERSION = "0.192.0"
8
+ VERSION = "0.194.0"
9
9
 
10
10
  # Full name of the author or maintainer of the project
11
11
  AUTHOR = "Raul Mauricio Uñate Castro"
@@ -1,18 +1,20 @@
1
1
  from orionis.luminate.container.container import Container
2
2
 
3
- class Facade:
3
+ class FacadeMeta(type):
4
+ def __getattr__(cls, name):
5
+ service = cls.resolve()
6
+ return getattr(service, name)
7
+
8
+
9
+ # Clase base para las fachadas usando la metaclase
10
+ class Facade(metaclass=FacadeMeta):
4
11
 
5
12
  _container = Container()
6
13
 
7
14
  @classmethod
8
- def resolve(cls):
9
- if not hasattr(cls, "_service"):
10
- raise ValueError(f"Facade class {cls.__name__} does not define _service attribute.")
11
- return cls._container.make(cls._service)
15
+ def getFacadeAccessor(cls):
16
+ raise NotImplementedError("Debes definir el nombre del servicio")
12
17
 
13
18
  @classmethod
14
- def __getattr__(cls, name):
15
- service = cls.resolve()
16
- if hasattr(service, name):
17
- return getattr(service, name)
18
- raise AttributeError(f"'{cls.__name__}' object has no method '{name}'")
19
+ def resolve(cls):
20
+ return cls._container.resolve(cls.getFacadeAccessor())
@@ -2,4 +2,7 @@ from orionis.luminate.contracts.facades.facade import Facade
2
2
  from orionis.luminate.contracts.services.log.log_service import ILogguerService
3
3
 
4
4
  class Log(Facade):
5
- _service = ILogguerService
5
+
6
+ @classmethod
7
+ def get_service_name(cls):
8
+ return ILogguerService
@@ -1,7 +1,9 @@
1
1
  from orionis.luminate.contracts.services.commands.reactor_commands_service import IReactorCommandsService
2
+ from orionis.luminate.contracts.services.config.config_service import IConfigService
2
3
  from orionis.luminate.contracts.services.log.log_service import ILogguerService
3
4
  from orionis.luminate.providers.service_provider import ServiceProvider
4
5
  from orionis.luminate.services.commands.reactor_commands_service import ReactorCommandsService
6
+ from orionis.luminate.services.config.config_service import ConfigService
5
7
  from orionis.luminate.services.log.log_service import LogguerService
6
8
 
7
9
  class ReactorCommandsServiceProvider(ServiceProvider):
@@ -10,6 +12,9 @@ class ReactorCommandsServiceProvider(ServiceProvider):
10
12
  """
11
13
  Registers services or bindings into the given container.
12
14
  """
15
+ if not self.app.bound(IConfigService):
16
+ self.app.scoped(IConfigService, ConfigService)
17
+
13
18
  if not self.app.bound(ILogguerService):
14
19
  self.app.singleton(ILogguerService, LogguerService)
15
20
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: orionis
3
- Version: 0.192.0
3
+ Version: 0.194.0
4
4
  Summary: Orionis Framework – Elegant, Fast, and Powerful.
5
5
  Home-page: https://github.com/orionis-framework/framework
6
6
  Author: Raul Mauricio Uñate Castro
@@ -1,6 +1,6 @@
1
1
  orionis/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  orionis/console.py,sha256=4gYWxf0fWYgJ4RKwARvnTPh06FL3GJ6SAZ7R2NzOICw,1342
3
- orionis/framework.py,sha256=B6vKtNHLJ3GHVOWtWR8ZFdjo-dWq56DmzJl2ZeEo6ck,1469
3
+ orionis/framework.py,sha256=MWrtWjRWbYFQsH2le-RDLvjQnWt-niA4yJr1KQdNuoc,1469
4
4
  orionis/installer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  orionis/installer/manager.py,sha256=SYP-k_3c2oxFOCCWfMz-wnekWivn3VcFVMUU5e_sJYo,2787
6
6
  orionis/installer/output.py,sha256=7O9qa2xtXMB_4ZvVi-Klneom9YazwygAd_4uYAoxhbU,8548
@@ -65,7 +65,7 @@ orionis/luminate/contracts/console/output/progress_bar.py,sha256=sOkQzQsliFemqZH
65
65
  orionis/luminate/contracts/container/container.py,sha256=rLOS1eYir1e1e06OVNTGESbR24rFOIU1CVni_8AbHgs,8802
66
66
  orionis/luminate/contracts/container/container_integrity.py,sha256=xigWcyxLUaFoWXEI75ucJ50Ypw2NtOiRp_CgOY3Qk20,4408
67
67
  orionis/luminate/contracts/facades/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
- orionis/luminate/contracts/facades/facade.py,sha256=oF-PVgumzewpdxh6LgkpY0BUmvD5eoiBg0yOrWrAEKs,586
68
+ orionis/luminate/contracts/facades/facade.py,sha256=oIERR4a1Rn9l-TDHkH8XVWKPPdxXbHuEb_TUZjmZhHk,550
69
69
  orionis/luminate/contracts/facades/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
70
  orionis/luminate/contracts/facades/commands/commands_facade.py,sha256=LpSfZb3lTmhgMx0H42NmFbKLvcOqSDIbpQrkQpF9RPY,1274
71
71
  orionis/luminate/contracts/facades/commands/scheduler_facade.py,sha256=CR2E7WbYGt8ZMpekUzWBHCor3FEnBmYMDwPfKSYPq84,947
@@ -118,7 +118,7 @@ orionis/luminate/facades/environment/environment_facade.py,sha256=byjVQWCQuqjgc2
118
118
  orionis/luminate/facades/files/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
119
119
  orionis/luminate/facades/files/path_facade.py,sha256=z6DLW7IiBc6nonEwcIbylgpbrM9hgVzZ2Cptdxjr93I,9219
120
120
  orionis/luminate/facades/log/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
121
- orionis/luminate/facades/log/log_facade.py,sha256=Lr0GxAT_jlD1F2ygQGkhZql3vJFmz_KXT8S1Ylpq3Vs,195
121
+ orionis/luminate/facades/log/log_facade.py,sha256=PUzha6q76VZjjeOldaLOFFeeWGAsWZvqpjKDsWooTHY,247
122
122
  orionis/luminate/facades/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
123
123
  orionis/luminate/facades/tests/tests_facade.py,sha256=hvNMU8idxxfvz4x-1_jeloff2Gee0k61VfUhxDrR6eg,1667
124
124
  orionis/luminate/foundation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -138,7 +138,7 @@ orionis/luminate/patterns/singleton.py,sha256=b3U0nubKSQWyal5wTXADVPtOztkaTk-M8Z
138
138
  orionis/luminate/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
139
139
  orionis/luminate/providers/service_provider.py,sha256=QG5TXP9oXsCdUhnMyCBEn0G_CnUJQD_u7wd_4LXE9yc,1135
140
140
  orionis/luminate/providers/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
141
- orionis/luminate/providers/commands/reactor_commands_service_provider.py,sha256=PsS9ymVpm6YwONlag8hZT6Pdgh7avWaH7jCIXrW7dgQ,1095
141
+ orionis/luminate/providers/commands/reactor_commands_service_provider.py,sha256=l4LoMtDgXYlmXiqPEsafS6HI_A8YUMsjGPJA8Lra-Wo,1366
142
142
  orionis/luminate/providers/commands/scheduler_provider.py,sha256=7Pq6V58UcJrQvhSDgNrQ6Z4KTO6_Jzp6EoP8oqPLsQg,485
143
143
  orionis/luminate/providers/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
144
144
  orionis/luminate/providers/config/config_service_provider.py,sha256=UWozQ84StJjn3x2gjqslLAu5P1GqgPzSvj-91hgfapk,466
@@ -181,9 +181,9 @@ tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
181
181
  tests/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
182
182
  tests/tools/class_example.py,sha256=dIPD997Y15n6WmKhWoOFSwEldRm9MdOHTZZ49eF1p3c,1056
183
183
  tests/tools/test_reflection.py,sha256=bhLQ7VGVod4B8sv-rW9AjnOumvaBVsoxieA3sdoM2yM,5244
184
- orionis-0.192.0.dist-info/LICENCE,sha256=-_4cF2EBKuYVS_SQpy1uapq0oJPUU1vl_RUWSy2jJTo,1111
185
- orionis-0.192.0.dist-info/METADATA,sha256=b0b4dHOLgjlR53KjqFtE6zRIT5THOsXDS9pLxug6XU4,3003
186
- orionis-0.192.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
187
- orionis-0.192.0.dist-info/entry_points.txt,sha256=a_e0faeSqyUCVZd0MqljQ2oaHHdlsz6g9sU_bMqi5zQ,49
188
- orionis-0.192.0.dist-info/top_level.txt,sha256=2bdoHgyGZhOtLAXS6Om8OCTmL24dUMC_L1quMe_ETbk,14
189
- orionis-0.192.0.dist-info/RECORD,,
184
+ orionis-0.194.0.dist-info/LICENCE,sha256=-_4cF2EBKuYVS_SQpy1uapq0oJPUU1vl_RUWSy2jJTo,1111
185
+ orionis-0.194.0.dist-info/METADATA,sha256=1_ETrnWH0_x_glAeyNF-G5DjTt2V2RBM1aOYHhf0Bvk,3003
186
+ orionis-0.194.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
187
+ orionis-0.194.0.dist-info/entry_points.txt,sha256=a_e0faeSqyUCVZd0MqljQ2oaHHdlsz6g9sU_bMqi5zQ,49
188
+ orionis-0.194.0.dist-info/top_level.txt,sha256=2bdoHgyGZhOtLAXS6Om8OCTmL24dUMC_L1quMe_ETbk,14
189
+ orionis-0.194.0.dist-info/RECORD,,