115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
# File 'lib/openc3/models/reaction_model.rb', line 115
def validate_triggers(triggers:)
unless triggers.is_a?(Array)
raise ReactionInputError.new "invalid operator: #{operator}"
end
trigger_hash = Hash.new()
triggers.each do | trigger |
unless trigger.is_a?(Hash)
raise ReactionInputError.new "invalid trigger object: #{trigger}"
end
if trigger['name'].nil? || trigger['group'].nil?
raise ReactionInputError.new "allowed: #{triggers}"
end
trigger_name = trigger['name']
unless trigger_hash[trigger_name].nil?
raise ReactionInputError.new "no duplicate triggers allowed: #{triggers}"
else
trigger_hash[trigger_name] = 1
end
end
return triggers
end
|