addTrigger method
Add the trigger
to this protocol.
Implementation
void addTrigger(Trigger trigger) {
// early out if already added
if (triggers.values.contains(trigger)) return;
// so much for null-safety "#%"&?
if (trigger.requiresMasterDevice != null &&
trigger.sourceDeviceRoleName != null &&
trigger.requiresMasterDevice!) {
assert(
hasMasterDevice(trigger.sourceDeviceRoleName!),
'The passed trigger cannot be initiated by its specified source device '
'since it is not a master device which is part of this protocol.');
}
triggers['${triggers.length}'] = trigger;
}