Module: Jdbc::Postgres

Defined in:
lib/jdbc/postgres.rb,
lib/jdbc/postgres/version.rb

Constant Summary collapse

DRIVER_VERSION =
'9.4.1212'
VERSION =
DRIVER_VERSION

Class Method Summary collapse

Class Method Details

.driver_jarObject



7
8
9
10
11
12
# File 'lib/jdbc/postgres.rb', line 7

def self.driver_jar
  version_jre_version = DRIVER_VERSION.split( '.' )
  version = jre_version
  version_jre_version << (version ? ".jre#{version}" : '')
  'postgresql-%s.%s.%s%s.jar' % version_jre_version
end

.driver_nameObject



24
25
26
# File 'lib/jdbc/postgres.rb', line 24

def self.driver_name
  'org.postgresql.Driver'
end

.jre_versionObject



28
29
30
31
32
33
34
35
36
37
38
# File 'lib/jdbc/postgres.rb', line 28

def self.jre_version
  version = ENV_JAVA[ 'java.specification.version' ]
  version = version.split('.').last.to_i # '1.7' => 7
  if version < 6
    5 # not supported
  elsif version == 6
    6
  else
    7 # NOTE: for 9.4 we only include 6/7 jars
  end
end

.load_driver(method = :load) ⇒ Object



14
15
16
17
18
19
20
21
22
# File 'lib/jdbc/postgres.rb', line 14

def self.load_driver(method = :load)
  send method, driver_jar
rescue LoadError => e
  if (version = jre_version) && version < 6
    warn "failed to load postgresql (driver) jar, please note that we no longer " <<
    "include JDBC 3.x support, on Java < 6 please use gem 'jdbc-postgres', '~> 9.2'"
  end
  raise e
end