lib/datamapper4rails.rb in datamapper4rail-0.1.0 vs lib/datamapper4rails.rb in datamapper4rail-0.2.0
- old
+ new
@@ -1,53 +2 @@
-require 'dm-core'
-def config_file()
- RAILS_ROOT + "/config/database.yml"
-end
-
-def create_connection()
- conf = config.dup
- if repositories = conf.delete(:repositories)
- repositories.each do |repo, conf|
- ::DataMapper.setup(repo, conf) unless conf.empty?
- end
- else
- ::DataMapper.setup(:default, conf) unless conf.empty?
- end
-end
-
-def get_config_for_environment
- if hash = full_config[RAILS_ENV]
- symbolize_keys(hash)
- elsif hash = full_config[RAILS_ENV.to_sym]
- hash
- else
- raise ArgumentError, "missing environment '#{RAILS_ENV}' in config file #{config_file}"
- end
-end
-
-def full_config
- @full_config ||= YAML::load(ERB.new(IO.read(config_file)).result)
-end
-
-def config
- @config ||= get_config_for_environment
-end
-
-def symbolize_keys(h)
- config = {}
-
- h.each do |k, v|
- if k == 'port'
- config[k.to_sym] = v.to_i
- elsif k == 'adapter' && v == 'postgresql'
- config[k.to_sym] = 'postgres'
- elsif v.is_a?(Hash)
- config[k.to_sym] = symbolize_keys(v)
- else
- config[k.to_sym] = v
- end
- end
-
- config
-end
-
-create_connection()
+require 'datamapper4rails/database_config'