class Nexpose::GlobalBlackout

Attributes

blackout[RW]
Array

Blackout starting dates, times and duration for blackout periods.

Public Class Methods

json_initializer(data) click to toggle source
# File lib/nexpose/global_blackout.rb, line 29
def self.json_initializer(data)
  new(blackout: data)
end
load(nsc) click to toggle source
# File lib/nexpose/global_blackout.rb, line 33
def self.load(nsc)
  uri               = '/api/2.1/silo_blackout/'
  resp              = AJAX.get(nsc, uri, AJAX::CONTENT_TYPE::JSON)
  hash              = JSON.parse(resp, symbolize_names: true)
  blackout          = self.json_initializer(hash).deserialize(hash)
  blackout.blackout = (hash[:blackouts] || []).map { |bout| Nexpose::Blackout.from_hash(bout) }
  blackout
end
new(blackout) click to toggle source
# File lib/nexpose/global_blackout.rb, line 10
def initialize(blackout)
  @blackout = Array(blackout)
end

Public Instance Methods

save(nsc) click to toggle source
# File lib/nexpose/global_blackout.rb, line 14
def save(nsc)
  params = to_json
  AJAX.post(nsc, '/api/2.1/silo_blackout/', params, AJAX::CONTENT_TYPE::JSON)
end
to_h() click to toggle source
# File lib/nexpose/global_blackout.rb, line 19
def to_h
  {
    blackouts: (@blackout || []).map(&:to_h)
  }
end
to_json() click to toggle source
# File lib/nexpose/global_blackout.rb, line 25
def to_json
  JSON.generate(to_h)
end