Class: PersistentTrigger

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/persistent_trigger.rb

Constant Summary collapse

TYPES =
[:on, :every].freeze

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.load_allObject



28
29
30
# File 'app/models/persistent_trigger.rb', line 28

def self.load_all
  all.find_each(&:register!)
end

Instance Method Details

#register!Object



38
39
40
41
# File 'app/models/persistent_trigger.rb', line 38

def register!
  return if registered_trigger
  @registered_trigger = Houston.config.triggers.create(type, value, action, params.merge(trigger: self), persistent_trigger_id: id)
end

#typeObject



33
34
35
# File 'app/models/persistent_trigger.rb', line 33

def type
  super && super.to_sym
end

#unregister!Object



43
44
45
46
# File 'app/models/persistent_trigger.rb', line 43

def unregister!
  return unless registered_trigger
  Houston.config.triggers.delete(registered_trigger)
end