Sha256: 8fd9ae825e31eece3a50a1f7d40c183daa8a89fa0661418141d28033cf30255b

Contents?: true

Size: 1 KB

Versions: 4

Compression:

Stored size: 1 KB

Contents

require 'fog/huaweicloud/models/model'

module Fog
  module Monitoring
    class HuaweiCloud
      class NotificationMethod < Fog::HuaweiCloud::Model
        identity :id

        attribute :name
        attribute :links
        attribute :type
        attribute :address
        attribute :period

        def create
          requires :name, :type, :address
          merge_attributes(
            service.create_notification_method(attributes).body
          )
        end

        def update(attr = nil)
          requires :name, :type, :address
          merge_attributes(
            service.put_notification_method(id, attr || attributes).body
          )
        end

        def patch(attr = nil)
          merge_attributes(
            service.patch_notification_method(id, attr || attributes).body
          )
        end

        def destroy
          requires :id
          service.delete_notification_method(id)
          true
        end

        def to_s
          name
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
fog-huaweicloud-0.0.3 lib/fog/monitoring/huaweicloud/models/notification_method.rb
fog-huaweicloud-0.0.2 lib/fog/monitoring/huaweicloud/models/notification_method.rb
fog-huaweicloud-0.1.3 lib/fog/monitoring/huaweicloud/models/notification_method.rb
fog-huaweicloud-0.1.2 lib/fog/monitoring/huaweicloud/models/notification_method.rb