mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-01 16:34:53 +01:00
separated collection from initialization of modules
This commit is contained in:
parent
020904df20
commit
b6c25f987c
1 changed files with 29 additions and 11 deletions
|
|
@ -352,21 +352,16 @@ class ModulesManager:
|
||||||
# For report of time consumption
|
# For report of time consumption
|
||||||
self._report = {}
|
self._report = {}
|
||||||
|
|
||||||
|
self._raw_modules = None
|
||||||
|
|
||||||
self.initialize_modules()
|
self.initialize_modules()
|
||||||
self.connect_modules()
|
self.connect_modules()
|
||||||
|
|
||||||
def initialize_modules(self):
|
def collect_modules(self):
|
||||||
"""Import and initialize modules."""
|
if self._raw_modules is not None:
|
||||||
self.log.debug("*** Pype modules initialization.")
|
return
|
||||||
# Prepare settings for modules
|
|
||||||
system_settings = getattr(self, "_system_settings", None)
|
|
||||||
if system_settings is None:
|
|
||||||
system_settings = get_system_settings()
|
|
||||||
modules_settings = system_settings["modules"]
|
|
||||||
|
|
||||||
report = {}
|
self._raw_modules = []
|
||||||
time_start = time.time()
|
|
||||||
prev_start_time = time_start
|
|
||||||
|
|
||||||
# Go through globals in `pype.modules`
|
# Go through globals in `pype.modules`
|
||||||
for name in dir(openpype.modules):
|
for name in dir(openpype.modules):
|
||||||
|
|
@ -394,7 +389,27 @@ class ModulesManager:
|
||||||
).format(name, ", ".join(not_implemented)))
|
).format(name, ", ".join(not_implemented)))
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
self._raw_modules.append(modules_item)
|
||||||
|
|
||||||
|
def initialize_modules(self):
|
||||||
|
"""Import and initialize modules."""
|
||||||
|
self.collect_modules()
|
||||||
|
|
||||||
|
self.log.debug("*** Pype modules initialization.")
|
||||||
|
# Prepare settings for modules
|
||||||
|
system_settings = getattr(self, "_system_settings", None)
|
||||||
|
if system_settings is None:
|
||||||
|
system_settings = get_system_settings()
|
||||||
|
modules_settings = system_settings["modules"]
|
||||||
|
|
||||||
|
report = {}
|
||||||
|
time_start = time.time()
|
||||||
|
prev_start_time = time_start
|
||||||
|
|
||||||
|
# Go through globals in `pype.modules`
|
||||||
|
for modules_item in self._raw_modules:
|
||||||
try:
|
try:
|
||||||
|
name = modules_item.__name__
|
||||||
# Try initialize module
|
# Try initialize module
|
||||||
module = modules_item(self, modules_settings)
|
module = modules_item(self, modules_settings)
|
||||||
# Store initialized object
|
# Store initialized object
|
||||||
|
|
@ -711,6 +726,9 @@ class TrayModulesManager(ModulesManager):
|
||||||
self.modules_by_id = {}
|
self.modules_by_id = {}
|
||||||
self.modules_by_name = {}
|
self.modules_by_name = {}
|
||||||
self._report = {}
|
self._report = {}
|
||||||
|
|
||||||
|
self._raw_modules = None
|
||||||
|
|
||||||
self.tray_manager = None
|
self.tray_manager = None
|
||||||
|
|
||||||
self.doubleclick_callbacks = {}
|
self.doubleclick_callbacks = {}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue