blob: c2cde587ff3429971b0cc27e64842e28395070d6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
module Oxidized
require 'ostruct'
require 'yaml'
class Config < OpenStruct
require 'oxidized/config/defaults'
# @param file [string] configuration file location
def initialize file=File.join(Config::Root, 'config')
super()
@file = file.to_s
end
# load config from file or bootstrap with built-ins
def load
if File.exists? @file
marshal_load YAML.load_file @file
else
require 'oxidized/config/bootstrap'
end
end
# save config to file
def save
File.write @file, YAML.dump(marshal_dump)
end
end
CFG = Config.new
CFG.load
Log.file = CFG.log if CFG.log
Log.level = Logger::INFO unless CFG.debug
end
|