Class: RubyHome::Configuration

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/ruby_home/configuration.rb

Constant Summary collapse

CATEGORIES_FILEPATH =
(File.dirname(__FILE__) + '/config/categories.yml').freeze
CATEGORIES =
YAML.load_file(CATEGORIES_FILEPATH).freeze
DEFAULT_NAME =
-'RubyHome'
DEFAULT_HOST =
-'0.0.0.0'
DEFAULT_PORT =
4567
DEFAULT_MODEL_NAME =
DEFAULT_NAME
DEFAULT_DISCOVERY_NAME =
DEFAULT_NAME
DEFAULT_CATEGORY_IDENTIFIER =
2

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(accessory_info = AccessoryInfo.instance) ⇒ Configuration

Returns a new instance of Configuration.



10
11
12
# File 'lib/ruby_home/configuration.rb', line 10

def initialize(accessory_info = AccessoryInfo.instance)
  @accessory_info = accessory_info
end

Instance Attribute Details

#discovery_nameObject



21
22
23
# File 'lib/ruby_home/configuration.rb', line 21

def discovery_name
  @discovery_name || DEFAULT_DISCOVERY_NAME
end

#hostObject



33
34
35
# File 'lib/ruby_home/configuration.rb', line 33

def host
  @host || DEFAULT_HOST
end

#model_nameObject



25
26
27
# File 'lib/ruby_home/configuration.rb', line 25

def model_name
  @model_name || DEFAULT_MODEL_NAME
end

#portObject



29
30
31
# File 'lib/ruby_home/configuration.rb', line 29

def port
  @port || DEFAULT_PORT
end

Instance Method Details

#category_identifierObject



37
38
39
# File 'lib/ruby_home/configuration.rb', line 37

def category_identifier
  @category_identifier || DEFAULT_CATEGORY_IDENTIFIER
end

#category_identifier=(value) ⇒ Object



41
42
43
44
45
46
47
48
# File 'lib/ruby_home/configuration.rb', line 41

def category_identifier=(value)
  if value.is_a?(Symbol)
    raise UnknownCategoriyIdentifierError if !CATEGORIES.include?(value)
    @category_identifier = CATEGORIES[value]
  else
    @category_identifier = value.to_i
  end
end