lib/sequel_rails/configuration.rb in sequel-rails-0.5.1 vs lib/sequel_rails/configuration.rb in sequel-rails-0.6.0

- old
+ new

@@ -21,10 +21,15 @@ attr_reader :root, :raw attr_accessor :logger attr_accessor :migration_dir + def initialize(root, database_yml_hash) + super() + @root, @raw = root, database_yml_hash + end + def environment_for(name) environments[name.to_s] || environments[name.to_sym] end def environments @@ -37,21 +42,20 @@ def schema_dump super.nil? ? (schema_dump = default_schema_dump) : super end + def load_database_tasks + super.nil? ? (load_database_tasks = true) : super + end + private def default_schema_dump not %w(test production).include? Rails.env end - def initialize(root, database_yml_hash) - super() - @root, @raw = root, database_yml_hash - end - def normalize_repository_config(hash) config = {} hash.each do |key, value| config[key.to_s] = if key.to_s == 'port' @@ -84,11 +88,11 @@ # override max connections if requested in app configuration config['max_connections'] = max_connections if max_connections config['search_path'] = search_path if search_path # some adapters only support an url - if config['adapter'] && config['adapter'] =~ /^(jdbc|do):/ + if config['adapter'] && config['adapter'] =~ /^(jdbc|do):/ && !config.has_key?('url') params = {} config.each do |k, v| next if ['adapter', 'host', 'port', 'database'].include?(k) if k == 'search_path' v = v.split(',').map &:strip unless v.is_a? Array @@ -96,10 +100,10 @@ end params[k] = v end params_str = params.map { |k, v| "#{k}=#{v}" }.join('&') port = config['port'] ? ":#{config['port']}" : '' - config['url'] = case config['adapter'] + config['url'] ||= case config['adapter'] when /sqlite/ "%s:%s" % [config['adapter'], config['database']] else "%s://%s%s/%s?%s" % [config['adapter'], config['host'], port, config['database'], params_str] end