lib/fig_newton/missing.rb in fig_newton-0.6 vs lib/fig_newton/missing.rb in fig_newton-0.7
- old
+ new
@@ -1,5 +1,7 @@
+require 'yaml'
+
module FigNewton
module Missing
def method_missing(*args, &block)
read_file unless @yml
m = args.first
@@ -8,11 +10,17 @@
value = FigNewton::Node.new(value) unless type_known? value
value
end
def read_file
+ @yml = nil
@yml = YAML.load_file "#{yml_directory}/#{ENV['FIG_NEWTON_FILE']}" if ENV['FIG_NEWTON_FILE']
- FigNewton.load('default.yml') unless ENV['FIG_NEWTON_FILE']
+ hostname = Socket.gethostname
+ puts hostname
+ hostfile = "#{yml_directory}/#{hostname}.yml"
+ puts hostfile
+ @yml = YAML.load_file hostfile if File.exist? hostfile and @yml.nil?
+ FigNewton.load('default.yml') if @yml.nil?
end
private
def type_known?(value)
value.kind_of? String or value.kind_of? Integer