Method: OpenC3::ReactionModel#initialize

Defined in:
lib/openc3/models/reaction_model.rb

#initialize(name:, scope:, description:, snooze:, actions:, triggers:, active: true, review: true, snoozed_until: nil, updated_at: nil) ⇒ ReactionModel



161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
# File 'lib/openc3/models/reaction_model.rb', line 161

def initialize(
  name:,
  scope:,
  description:,
  snooze:,
  actions:,
  triggers:,
  active: true,
  review: true,
  snoozed_until: nil,
  updated_at: nil
)
  if name.nil? || scope.nil? || description.nil? || snooze.nil? || triggers.nil? || actions.nil?
    raise ReactionInputError.new "#{name}, #{scope}, #{description}, #{snooze}, #{triggers}, or #{actions} must not be nil"
  end
  super("#{scope}#{PRIMARY_KEY}", name: name, scope: scope)
  @microservice_name = "#{scope}__OPENC3__REACTION"
  @active = active
  @review = review
  @description = description
  @snoozed_until = snoozed_until
  @snooze = validate_snooze(snooze: snooze)
  @actions = validate_actions(actions: actions)
  @triggers = validate_triggers(triggers: triggers)
  @updated_at = updated_at
end