Class: Marty::Config
- Inherits:
-
Base
show all
- Defined in:
- app/models/marty/config.rb
Defined Under Namespace
Classes: ConfigValidator
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Base
get_final_attrs, get_struct_attrs, make_hash, make_openstruct, mcfly_pt
joins, old_joins
Class Method Details
.[](key) ⇒ Object
51
52
53
|
# File 'app/models/marty/config.rb', line 51
def self.[](key)
fetch(key, nil)
end
|
.[]=(key, value) ⇒ Object
39
40
41
42
43
44
45
46
47
48
49
|
# File 'app/models/marty/config.rb', line 39
def self.[]=(key, value)
entry = find_by(key: key)
if !entry
entry = new
entry.key = key
end
entry.set_value(value)
entry.save!
value
end
|
.del(key) ⇒ Object
55
56
57
58
59
60
61
62
|
# File 'app/models/marty/config.rb', line 55
def self.del(key)
entry = find_by(key: key)
if entry
result = entry.get_value
entry.destroy
result
end
end
|
.fetch(*args) ⇒ Object
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'app/models/marty/config.rb', line 26
def self.fetch(*args)
unless (1..2).cover?(args.size)
raise ArgumentError, 'wrong number of arguments '\
"(given #{args.size}, expected 1..2)"
end
entry = find_by(key: args[0])
return entry.get_value if entry
return args[1] if args.size > 1
raise KeyError, "key not found: \"#{args[0]}\""
end
|
Instance Method Details
#get_value ⇒ Object
18
19
20
|
# File 'app/models/marty/config.rb', line 18
def get_value
value[0]
end
|
#set_value(v) ⇒ Object
22
23
24
|
# File 'app/models/marty/config.rb', line 22
def set_value(v)
self.value = [v]
end
|