Class: CFA::BooleanValue

Inherits:
Object
  • Object
show all
Defined in:
lib/cfa/base_model.rb

Overview

Representing boolean value switcher in default grub configuration file. Allows easy switching and questioning for boolean value, even if represented by text in config file

Instance Method Summary collapse

Constructor Details

#initialize(name, model, true_value: "true", false_value: "false") ⇒ BooleanValue

Returns a new instance of BooleanValue.



108
109
110
111
112
113
# File 'lib/cfa/base_model.rb', line 108

def initialize(name, model, true_value: "true", false_value: "false")
  @name = name
  @model = model
  @true_value = true_value
  @false_value = false_value
end

Instance Method Details

#defined?Boolean

Returns:

  • (Boolean)


135
136
137
# File 'lib/cfa/base_model.rb', line 135

def defined?
  !data.nil?
end

#disableObject



119
120
121
# File 'lib/cfa/base_model.rb', line 119

def disable
  @model.generic_set(@name, @false_value)
end

#disabled?Boolean

Returns:

  • (Boolean)


129
130
131
132
133
# File 'lib/cfa/base_model.rb', line 129

def disabled?
  return nil unless data

  data != @true_value
end

#enableObject



115
116
117
# File 'lib/cfa/base_model.rb', line 115

def enable
  @model.generic_set(@name, @true_value)
end

#enabled?Boolean

Returns:

  • (Boolean)


123
124
125
126
127
# File 'lib/cfa/base_model.rb', line 123

def enabled?
  return nil unless data

  data == @true_value
end

#value=(value) ⇒ Object

sets boolean value, recommend to use for generic boolean setter. for constants prefer to use enable/disable



141
142
143
# File 'lib/cfa/base_model.rb', line 141

def value=(value)
  @model.generic_set(@name, value ? @true_value : @false_value)
end