class Notifu::Model::Event

Attributes

action[R]
address[R]
api_endpoint[R]
aspiring_code[R]
code[R]
datacenter[R]
duration[R]
host[R]
interval[R]
message[R]
notifu_id[R]
occurrences_count[R]
occurrences_trigger[R]
playbook[R]
process_result[RW]
refresh[R]
service[R]
sgs[R]
time_created[R]
time_last_event[R]
time_last_notified[R]
unsilence[R]

Public Class Methods

new(args) click to toggle source
# File lib/notifu/model/event.rb, line 28
def initialize args
  payload = args.first
  payload.each { |name, value| instance_variable_set("@#{name}", value) }
  @time_last_notified = Hash.new.to_json.to_s
  @time_created = self.time_last_event
  @aspiring_code = self.code
  @occurrences_trigger ||= 1
  @refresh ||= nil
  @unsilence ||= true
end

Public Instance Methods

data() click to toggle source
# File lib/notifu/model/event.rb, line 43
def data
  @data ||= Hash[ instance_variables.map { |var| [var.to_s.sub(/^@/,""), instance_variable_get(var)] } ]
end
group_sla() click to toggle source
# File lib/notifu/model/event.rb, line 39
def group_sla
  self.sgs.map { |gs| Hash[:group, gs.split(':')[0], :sla, gs.split(':')[1]] }
end
update_process_result!(obj) click to toggle source
# File lib/notifu/model/event.rb, line 47
def update_process_result!(obj)
  self.process_result ||= JSON.generate(Array.new)
  self.process_result = JSON.generate(JSON.parse(self.process_result) + [ obj ])
end