class Alexandria::BookProviders::Preferences::Variable

Attributes

description[R]
name[R]
possible_values[R]
value[RW]

Public Class Methods

new(provider, name, description, default_value, possible_values = nil, mandatory = true) click to toggle source
# File lib/alexandria/book_providers.rb, line 139
def initialize(provider, name, description, default_value,
               possible_values = nil, mandatory = true)

  @provider = provider
  @name = name
  @description = description
  @value = default_value
  @possible_values = possible_values
  @mandatory = mandatory
end

Public Instance Methods

default_value=(new_value) click to toggle source
# File lib/alexandria/book_providers.rb, line 150
def default_value=(new_value)
  self.value = new_value
end
mandatory?() click to toggle source
# File lib/alexandria/book_providers.rb, line 164
def mandatory?
  @mandatory
end
new_value=(new_value) click to toggle source
# File lib/alexandria/book_providers.rb, line 154
def new_value=(new_value)
  name = @provider.variable_name(self)
  Alexandria::Preferences.instance.set_variable(name, new_value)
  self.value = new_value
end
provider_name() click to toggle source
# File lib/alexandria/book_providers.rb, line 160
def provider_name
  @provider.name.downcase
end