lib/apartment/database.rb in apartment-0.20.0 vs lib/apartment/database.rb in apartment-0.21.0

- old
+ new

@@ -25,14 +25,23 @@ # def adapter Thread.current[:apartment_adapter] ||= begin adapter_method = "#{config[:adapter]}_adapter" + if defined?(JRUBY_VERSION) + if config[:adapter] =~ /mysql/ + adapter_method = 'jdbc_mysql_adapter' + elsif config[:adapter] =~ /postgresql/ + adapter_method = 'jdbc_postgresql_adapter' + end + end + begin + require "apartment/adapters/abstract_jdbc_adapter" if defined?(JRUBY_VERSION) require "apartment/adapters/#{adapter_method}" rescue LoadError - raise "The adapter `#{config[:adapter]}` is not yet supported" + raise "The adapter `#{adapter_method}` is not yet supported" end unless respond_to?(adapter_method) raise AdapterNotFound, "database configuration specifies nonexistent #{config[:adapter]} adapter" end @@ -46,10 +55,10 @@ def reload!(config = nil) Thread.current[:apartment_adapter] = nil @config = config end - private + private # Fetch the rails database configuration # def config @config ||= Rails.configuration.database_configuration[Rails.env].symbolize_keys \ No newline at end of file