Class: Flydata::Helper::ConfigParser
- Inherits:
-
Object
- Object
- Flydata::Helper::ConfigParser
- Defined in:
- lib/flydata/helper/config_parser.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.parse(config_content) ⇒ Object
158 159 160 |
# File 'lib/flydata/helper/config_parser.rb', line 158 def self.parse(config_content) ConfigParser.new.parse(config_content) end |
Instance Method Details
#parse(config_content) ⇒ Object
162 163 164 165 166 167 168 |
# File 'lib/flydata/helper/config_parser.rb', line 162 def parse(config_content) conf = YAML::load(config_content) raise ConfigError.new("Invalid conf format.") unless conf and conf.kind_of?(Hash) conf = symbolize_keys(conf) conf[:helper] = Config.create(parse_helper(conf[:helper])) conf end |
#parse_helper(conf) ⇒ Object
170 171 172 173 174 175 |
# File 'lib/flydata/helper/config_parser.rb', line 170 def parse_helper(conf) return Config::DEFAULT_HELPER if conf.nil? or conf.empty? conf[:scheduled_actions] = Config::DEFAULT_SCHEDULED_ACTIONS. dup.merge(conf[:scheduled_actions] || {}) conf end |
#symbolize_keys(value) ⇒ Object
177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
# File 'lib/flydata/helper/config_parser.rb', line 177 def symbolize_keys(value) case value when Hash value.inject({}){|result, (key, value)| new_key = case key when String then key.to_sym else key end new_value = symbolize_keys(value) result[new_key] = new_value result } when Array value.collect {|e| symbolize_keys(e)} else value end end |