MCPcopy Create free account
hub / github.com/cronitorio/cronitor-cli / shouldIncludeTask

Function shouldIncludeTask

cmd/discover_logic_windows.go:352–389  ·  view source on GitHub ↗

shouldIncludeTask determines if a Windows task should be included in the sync Returns true if the task has at least one enabled, schedulable trigger Excludes tasks that only have: - Disabled triggers (enabled=false) - One-time triggers (TimeTrigger) - Session state change triggers (SessionStateChang

(task taskmaster.RegisteredTask)

Source from the content-addressed store, hash-verified

350// - One-time triggers (TimeTrigger)
351// - Session state change triggers (SessionStateChangeTrigger)
352func shouldIncludeTask(task taskmaster.RegisteredTask) bool {
353 if task.Definition.Triggers == nil || len(task.Definition.Triggers) == 0 {
354 // No triggers = skip
355 return false
356 }
357
358 hasValidTrigger := false
359
360 for _, trigger := range task.Definition.Triggers {
361 // Skip disabled triggers
362 if !trigger.GetEnabled() {
363 continue
364 }
365
366 // Check trigger type
367 switch trigger.(type) {
368 case taskmaster.TimeTrigger:
369 // Skip one-time triggers
370 continue
371 case taskmaster.SessionStateChangeTrigger:
372 // Skip session state change triggers
373 continue
374 case taskmaster.DailyTrigger, taskmaster.WeeklyTrigger,
375 taskmaster.MonthlyTrigger, taskmaster.MonthlyDOWTrigger,
376 taskmaster.BootTrigger, taskmaster.LogonTrigger,
377 taskmaster.IdleTrigger, taskmaster.RegistrationTrigger:
378 // Valid trigger type found
379 hasValidTrigger = true
380 break
381 }
382
383 if hasValidTrigger {
384 break
385 }
386 }
387
388 return hasValidTrigger
389}
390
391// ScheduleInfo contains schedules and optional note for event-driven tasks
392type ScheduleInfo struct {

Calls

no outgoing calls