class Pagerduty::MaintenanceWindow

Public Class Methods

new(attributes) click to toggle source
# File lib/pagerduty/models/maintenance_window.rb, line 23
def initialize(attributes)
  self.attributes = attributes
  self.service_ids = self.services.map(&:id)
end

Public Instance Methods

delete() click to toggle source
# File lib/pagerduty/models/maintenance_window.rb, line 41
def delete
  res = curl({
    uri: "https://#@@subdomain.pagerduty.com/api/v1/maintenance_windows/#{self.id}",
    method: 'DELETE'
  })

  res['code'] == '204' ? "Successfully deleted Maintenance Window #{self.id}" : res

end
save(options={}) click to toggle source
# File lib/pagerduty/models/maintenance_window.rb, line 28
def save(options={})
  Pagerduty::MaintenanceWindow.new(JSON.parse(curl({
    uri: "https://#@@subdomain.pagerduty.com/api/v1/maintenance_windows/#{self.id}",
    data: {
      start_time: self.start_time,
      end_time: self.end_time,
      description: self.description,
      service_ids: self.service_ids
    },
    method: 'PUT'
  }).body)['maintenance_window'])
end