getTriggeredTaskExecutor function

TriggeredTaskExecutor getTriggeredTaskExecutor(
  1. TriggeredTask triggeredTask,
  2. Trigger trigger,
  3. TaskDescriptor task
)

Returns the relevant TriggeredTaskExecutor based on the type of trigger and task.

Implementation

TriggeredTaskExecutor getTriggeredTaskExecutor(
  TriggeredTask triggeredTask,
  Trigger trigger,
  TaskDescriptor task,
) {
  // a TriggeredAppTaskExecutor need BOTH a Scheduleable trigger and an AppTask
  // to schedule
  if (trigger is Scheduleable && task is AppTask) {
    return TriggeredAppTaskExecutor(triggeredTask, trigger, task);
  }

  // all other cases we use the normal background triggering relying on the app
  // running in the background
  return TriggeredTaskExecutor(triggeredTask, trigger, task);
}