Sha256: 0acf5dd79467e53b8ad300f3f1d2123920d16f861ee656054536be7296c808d6
Contents?: true
Size: 1.22 KB
Versions: 2
Compression:
Stored size: 1.22 KB
Contents
require 'fog/core/model' require 'fog/rackspace/models/monitoring/base' module Fog module Rackspace class Monitoring class Alarm < Fog::Rackspace::Monitoring::Base identity :id attribute :entity attribute :entity_id attribute :label attribute :criteria attribute :check_type attribute :check_id attribute :notification_plan_id def params(options={}) h = { 'label' => label, 'criteria' => criteria, 'notification_plan_id' => notification_plan_id, }.merge(options) h.reject {|key, value| value.nil?} end def save requires :notification_plan_id requires :entity_id if identity data = service.update_alarm(entity_id, identity, params) else options = params('check_type' => check_type, 'check_id' => check_id) data = service.create_alarm(entity_id, options) self.id = data.headers['X-Object-ID'] end true end def destroy requires :id service.delete_alarm(entity.id,id) end end end end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
gapinc-fog-1.14.0 | lib/fog/rackspace/models/monitoring/alarm.rb |
fog-maestrodev-1.14.0.20130806165225 | lib/fog/rackspace/models/monitoring/alarm.rb |