Sha256: f48020e952e2c90b2fe9a1122648c86fe6c0792c3fbf65c9abb6616682ed7632
Contents?: true
Size: 774 Bytes
Versions: 1
Compression:
Stored size: 774 Bytes
Contents
require 'pathname' require 'fileutils' require 'forwardable' require 'canals/tools/yaml' module Canals class Config extend Forwardable def initialize(root = nil) @root = root @config = load_config(global_config_file) end def_delegators :@config, :[], :[]= def load_config(config_file) valid_file = config_file && config_file.exist? && !config_file.size.zero? return {} if !valid_file return Canals::Tools::YAML.load_file(config_file) end def save! FileUtils.mkdir_p(global_config_file.dirname) Canals::Tools::YAML.dump_file(global_config_file, @config) end private def global_config_file file = File.join(Dir.home, '.canals/config') Pathname.new(file) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
canals-0.9.1 | lib/canals/config.rb |