dbd-jdbc 0.0.5 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Rakefile CHANGED
@@ -28,7 +28,7 @@ Rake::Task['manifest'].invoke # Always regen manifest, so Hoe has up-to-date lis
28
28
 
29
29
  begin
30
30
  require 'hoe'
31
- Hoe.new("dbd-jdbc", "0.0.5") do |p|
31
+ Hoe.new("dbd-jdbc", "0.1.0") do |p|
32
32
  p.rubyforge_name = "jruby-extras"
33
33
  p.url = "http://kenai.com/projects/dbd-jdbc"
34
34
  p.author = "Chad Johnson"
@@ -49,7 +49,7 @@ module DBI
49
49
  include_class 'java.util.HashMap'
50
50
  include_class 'java.util.Collections'
51
51
 
52
- VERSION = "0.0.5"
52
+ VERSION = "0.1.0"
53
53
  DESCRIPTION = "JDBC DBD driver for JRuby"
54
54
 
55
55
  #
@@ -161,8 +161,10 @@ module DBI::DBD::Jdbc
161
161
  return @connection
162
162
  end
163
163
 
164
- def self.from_java_connection(java_connection, type_coercion = false)
165
- DBI::DatabaseHandle.new(Database.new(java_connection), type_coercion)
164
+ def self.from_java_connection(java_connection, type_coercion = true)
165
+ dbh = DBI::DatabaseHandle.new(Database.new(java_connection), type_coercion)
166
+ dbh.driver_name = "Jdbc"
167
+ dbh
166
168
  end
167
169
 
168
170
  private
@@ -46,7 +46,7 @@ module DBI::DBD::Jdbc
46
46
  if value.nil?
47
47
  @statement.setNull(param, @nulltype)
48
48
  elsif value.is_a?(String)
49
- @statement.setString(param, value)
49
+ @statement.setString(param, value.to_java_string)
50
50
  elsif value.is_a?(Fixnum)
51
51
  #no reason not to coerce it to a long?
52
52
  @statement.setLong(param, value)
@@ -182,7 +182,12 @@ module DBI::DBD::Jdbc
182
182
  when java.sql.Types::BIT
183
183
  rs.getBoolean(columnNumber)
184
184
  when java.sql.Types::NUMERIC, java.sql.Types::DECIMAL
185
- metaData.getScale(columnNumber) == 0 ? rs.getLong(columnNumber) : rs.getDouble(columnNumber)
185
+ # TODO: Find a better way to return Numerics and Decimals as nil when they are null in the DB
186
+ if rs.getObject(columnNumber)
187
+ metaData.getScale(columnNumber) == 0 ? rs.getLong(columnNumber) : rs.getDouble(columnNumber)
188
+ else
189
+ nil
190
+ end
186
191
  when java.sql.Types::DATE
187
192
  jdbcdate_to_date(rs.getDate(columnNumber))
188
193
  when java.sql.Types::TIME
metadata CHANGED
@@ -18,14 +18,12 @@ name: dbd-jdbc
18
18
  rdoc_options:
19
19
  - --main
20
20
  - README.txt
21
- rubyforge_project: jruby-extras
22
21
  autorequire:
23
- licenses: []
24
-
22
+ rubyforge_project: jruby-extras
25
23
  executables: []
26
24
 
27
25
  description: A JDBC DBD driver for Ruby DBI
28
- specification_version: 3
26
+ specification_version: 2
29
27
  default_executable:
30
28
  files:
31
29
  - lib/dbd/Jdbc.rb
@@ -43,17 +41,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
43
41
  version:
44
42
  extensions: []
45
43
 
46
- rubygems_version: 1.3.2
44
+ rubygems_version: 1.3.1
47
45
  requirements: []
48
46
 
49
47
  authors:
50
48
  - Chad Johnson
51
- date: 2009-05-16 05:00:00 +00:00
49
+ date: 2009-08-18 05:00:00 +00:00
52
50
  platform: ruby
53
51
  test_files: []
54
52
 
55
53
  version: !ruby/object:Gem::Version
56
- version: 0.0.5
54
+ version: 0.1.0
57
55
  require_paths:
58
56
  - lib
59
57
  dependencies: []