Module: JdbcSpec::ActiveRecordExtensions

Included in:
ActiveRecord::Base
Defined in:
lib/jdbc_adapter/jdbc_derby.rb,
lib/jdbc_adapter/jdbc_mysql.rb,
lib/jdbc_adapter/jdbc_hsqldb.rb,
lib/jdbc_adapter/jdbc_cachedb.rb,
lib/jdbc_adapter/jdbc_sqlite3.rb,
lib/jdbc_adapter/jdbc_informix.rb,
lib/active_record/connection_adapters/jdbc_adapter.rb

Instance Method Summary collapse

Instance Method Details

#cachedb_connection(config) ⇒ Object



5
6
7
8
9
10
# File 'lib/jdbc_adapter/jdbc_cachedb.rb', line 5

def cachedb_connection( config )
  config[:port] ||= 1972
  config[:url] ||= "jdbc:Cache://#{config[:host]}:#{config[:port]}/#{ config[:database]}"
  config[:driver] ||= "com.intersys.jdbc.CacheDriver"
  jdbc_connection( config )
end

#derby_connection(config) ⇒ Object



5
6
7
8
9
# File 'lib/jdbc_adapter/jdbc_derby.rb', line 5

def derby_connection(config)
  config[:url] ||= "jdbc:derby:#{config[:database]};create=true"
  config[:driver] ||= "org.apache.derby.jdbc.EmbeddedDriver"
  embedded_driver(config)
end

#embedded_driver(config) ⇒ Object



51
52
53
54
55
# File 'lib/active_record/connection_adapters/jdbc_adapter.rb', line 51

def embedded_driver(config)
  config[:username] ||= "sa"
  config[:password] ||= ""
  jdbc_connection(config)
end

#h2_connection(config) ⇒ Object



9
10
11
12
13
# File 'lib/jdbc_adapter/jdbc_hsqldb.rb', line 9

def h2_connection(config)
  config[:url] ||= "jdbc:h2:#{config[:database]}"
  config[:driver] ||= "org.h2.Driver"
  embedded_driver(config)
end

#hsqldb_connection(config) ⇒ Object



3
4
5
6
7
# File 'lib/jdbc_adapter/jdbc_hsqldb.rb', line 3

def hsqldb_connection(config)
  config[:url] ||= "jdbc:hsqldb:#{config[:database]}"
  config[:driver] ||= "org.hsqldb.jdbcDriver"
  embedded_driver(config)
end

#informix_connection(config) ⇒ Object



30
31
32
33
34
35
# File 'lib/jdbc_adapter/jdbc_informix.rb', line 30

def informix_connection(config)
  config[:port] ||= 9088
  config[:url] ||= "jdbc:informix-sqli://#{config[:host]}:#{config[:port]}/#{config[:database]}:INFORMIXSERVER=#{config[:servername]}"
  config[:driver] = 'com.informix.jdbc.IfxDriver'
  jdbc_connection(config)
end

#jdbc_connection(config) ⇒ Object Also known as: jndi_connection



45
46
47
48
# File 'lib/active_record/connection_adapters/jdbc_adapter.rb', line 45

def jdbc_connection(config)
  connection = ::ActiveRecord::ConnectionAdapters::JdbcConnection.new(config)
  ::ActiveRecord::ConnectionAdapters::JdbcAdapter.new(connection, logger, config)
end

#mysql_connection(config) ⇒ Object



8
9
10
11
12
13
14
15
16
17
# File 'lib/jdbc_adapter/jdbc_mysql.rb', line 8

def mysql_connection(config)
  config[:port] ||= 3306
  if config[:url]
    config[:url] = config[:url]['?'] ? "#{config[:url]}&#{MySQL::URL_OPTIONS}" : "#{config[:url]}?#{MySQL::URL_OPTIONS}"
  else
    config[:url] = "jdbc:mysql://#{config[:host]}:#{config[:port]}/#{config[:database]}?#{MySQL::URL_OPTIONS}"
  end
  config[:driver] = "com.mysql.jdbc.Driver"
  jdbc_connection(config)
end

#sqlite3_connection(config) ⇒ Object



3
4
5
6
7
# File 'lib/jdbc_adapter/jdbc_sqlite3.rb', line 3

def sqlite3_connection(config)
  config[:url] ||= "jdbc:sqlite:#{config[:database]}"
  config[:driver] ||= "org.sqlite.JDBC"
  jdbc_connection(config)
end