in azure/durable_functions/models/DurableOrchestrationContext.py [0:0]
def _add_to_open_tasks(self, task: TaskBase):
if task._is_scheduled:
return
if isinstance(task, AtomicTask):
if task.id is None:
task.id = self._sequence_number
self._sequence_number += 1
self.open_tasks[task.id] = task
elif task.id != -1 and self.open_tasks[task.id] != task:
# Case when returning task_any with multiple external events having the same ID
self.open_tasks[task.id].append(task)
if task.id in self.deferred_tasks:
task_update_action = self.deferred_tasks[task.id]
task_update_action()
else:
for child in task.children:
self._add_to_open_tasks(child)