void trigger(EventSubscription subscription, ParamSet eventContext, TaskInstance parentInstance) const { if (_scheduler) { QString id; if (parentInstance.isNull()) { id = _id; } else { TaskInstancePseudoParamsProvider ppp = parentInstance.pseudoParams(); id = eventContext.evaluate(_id, &ppp); QString idIfLocalToGroup = parentInstance.task().taskGroup().id() +"."+_id; if (_scheduler->taskExists(idIfLocalToGroup)) id = idIfLocalToGroup; } TaskInstanceList instances = _scheduler->syncRequestTask( id, evaluatedOverrindingParams(eventContext, parentInstance), _force, parentInstance); if (instances.isEmpty()) Log::error(parentInstance.task().id(), parentInstance.idAsLong()) << "requesttask action failed to request execution of task " << id << " within event subscription context " << subscription.subscriberName() << "|" << subscription.eventName(); else foreach (TaskInstance childInstance, instances) Log::info(parentInstance.task().id(), parentInstance.idAsLong()) << "requesttask action requested execution of task " << childInstance.task().id() << "/" << childInstance.groupId(); } }