class Datastore

Attributes

config[R]
groups[R]
lights[R]
rules[R]
scenes[R]
schedules[R]
sensors[R]

Public Class Methods

new(data = {}) click to toggle source
# File lib/lights/datastore.rb, line 13
def initialize(data = {})
  @lights = BulbList.new(data["lights"]) 
  @groups = GroupList.new(data["groups"])
  @config = HueConfig.new(data["config"])
  @schedules = ScheduleList.new(data["schedules"])
  @scenes = SceneList.new(data["scenes"])
  @rules = RuleList.new(data["rules"])
  @sensors = SensorList.new(data["sensors"])
end

Public Instance Methods

data() click to toggle source
# File lib/lights/datastore.rb, line 33
def data
  data = {}
  data["lights"] = @lights.data if !@lights.data.empty?
  data["groups"] = @groups.data if !@groups.data.empty?
  data["config"] = @config.data if !@config.data.empty?
  data["schedules"] = @schedules.data if !@schedules.data.empty?
  data["scenes"] = @scenes.data if !@scenes.data.empty?
  data["rules"] = @rules.data if !@rules.data.empty?
  data["sensors"] = @sensors.data if !@sensors.data.empty?
  data
end
list() click to toggle source
# File lib/lights/datastore.rb, line 23
def list
  @lights.list + \
    @groups.list + \
    [@config] + \
    @schedules.list + \
    @scenes.list + \
    @rules.list + \
    @sensors.list
end