Skip to content

Commit 3069094

Browse files
author
Pavel Okhlopkov
committed
refactoring
Signed-off-by: Pavel Okhlopkov <[email protected]>
1 parent 7c42577 commit 3069094

File tree

1 file changed

+28
-14
lines changed

1 file changed

+28
-14
lines changed

pkg/module_manager/module_manager.go

+28-14
Original file line numberDiff line numberDiff line change
@@ -894,30 +894,44 @@ func (mm *ModuleManager) HandleScheduleEvent(
894894
}
895895

896896
func (mm *ModuleManager) CreateTasksByBinding(binding BindingType, createTasksFunc func(gh *hooks.GlobalHook, m *modules.BasicModule, mh *hooks.ModuleHook) []sh_task.Task) []sh_task.Task {
897-
globalHooks := mm.GetGlobalHooksInOrder(binding)
897+
var allTasks []sh_task.Task
898898

899-
tasks := make([]sh_task.Task, 0)
900-
for _, hookName := range globalHooks {
899+
// Process global hooks
900+
allTasks = append(allTasks, mm.createTasksFromGlobalHooks(binding, createTasksFunc)...)
901+
902+
// Process module hooks for enabled modules
903+
allTasks = append(allTasks, mm.createTasksFromModuleHooks(binding, createTasksFunc)...)
904+
905+
return allTasks
906+
}
907+
908+
// createTasksFromGlobalHooks processes all global hooks for a given binding type
909+
func (mm *ModuleManager) createTasksFromGlobalHooks(binding BindingType, createTasksFunc func(gh *hooks.GlobalHook, m *modules.BasicModule, mh *hooks.ModuleHook) []sh_task.Task) []sh_task.Task {
910+
var tasks []sh_task.Task
911+
912+
for _, hookName := range mm.GetGlobalHooksInOrder(binding) {
901913
gh := mm.GetGlobalHook(hookName)
902-
newTasks := createTasksFunc(gh, nil, nil)
903-
if len(newTasks) > 0 {
914+
if newTasks := createTasksFunc(gh, nil, nil); len(newTasks) > 0 {
904915
tasks = append(tasks, newTasks...)
905916
}
906917
}
907918

908-
mods := mm.moduleScheduler.GetEnabledModuleNames()
919+
return tasks
920+
}
921+
922+
// createTasksFromModuleHooks processes all module hooks for enabled modules and a given binding type
923+
func (mm *ModuleManager) createTasksFromModuleHooks(binding BindingType, createTasksFunc func(gh *hooks.GlobalHook, m *modules.BasicModule, mh *hooks.ModuleHook) []sh_task.Task) []sh_task.Task {
924+
var tasks []sh_task.Task
909925

910-
for _, moduleName := range mods {
911-
m := mm.GetModule(moduleName)
912-
// skip module if its hooks don't have hook controllers set
913-
if !m.HooksControllersReady() {
926+
for _, moduleName := range mm.moduleScheduler.GetEnabledModuleNames() {
927+
module := mm.GetModule(moduleName)
928+
// Skip module if its hooks don't have hook controllers set
929+
if !module.HooksControllersReady() {
914930
continue
915931
}
916932

917-
moduleHooks := m.GetHooks(binding)
918-
for _, mh := range moduleHooks {
919-
newTasks := createTasksFunc(nil, m, mh)
920-
if len(newTasks) > 0 {
933+
for _, moduleHook := range module.GetHooks(binding) {
934+
if newTasks := createTasksFunc(nil, module, moduleHook); len(newTasks) > 0 {
921935
tasks = append(tasks, newTasks...)
922936
}
923937
}

0 commit comments

Comments
 (0)