Class: Sequel::JDBC::TypeConvertor

Inherits:
Object
  • Object
show all
Defined in:
lib/sequel/adapters/jdbc.rb

Constant Summary collapse

MAP =
Hash.new(o.method(:Object))
BASIC_MAP =
MAP.dup

Instance Method Summary collapse

Instance Method Details

#RubyBigDecimal(r, i) ⇒ Object


69
70
71
72
73
# File 'lib/sequel/adapters/jdbc.rb', line 69

def RubyBigDecimal(r, i)
  if v = r.getBigDecimal(i)
    BigDecimal.new(v.to_string)
  end
end

#RubyBlob(r, i) ⇒ Object


74
75
76
77
78
# File 'lib/sequel/adapters/jdbc.rb', line 74

def RubyBlob(r, i)
  if v = r.getBytes(i)
    Sequel::SQL::Blob.new(String.from_java_bytes(v))
  end
end

#RubyClob(r, i) ⇒ Object


79
80
81
82
83
# File 'lib/sequel/adapters/jdbc.rb', line 79

def RubyClob(r, i)
  if v = r.getClob(i)
    v.getSubString(1, v.length)
  end
end

#RubyDate(r, i) ⇒ Object


59
60
61
62
63
# File 'lib/sequel/adapters/jdbc.rb', line 59

def RubyDate(r, i)
  if v = r.getDate(i)
    Date.civil(v.getYear + 1900, v.getMonth + 1, v.getDate)
  end
end

#RubyTime(r, i) ⇒ Object


54
55
56
57
58
# File 'lib/sequel/adapters/jdbc.rb', line 54

def RubyTime(r, i)
  if v = r.getTime(i)
    Sequel.string_to_time("#{v.to_string}.#{sprintf('%03i', v.getTime.divmod(1000).last)}")
  end
end

#RubyTimestamp(r, i) ⇒ Object


64
65
66
67
68
# File 'lib/sequel/adapters/jdbc.rb', line 64

def RubyTimestamp(r, i)
  if v = r.getTimestamp(i)
    Sequel.database_to_application_timestamp([v.getYear + 1900, v.getMonth + 1, v.getDate, v.getHours, v.getMinutes, v.getSeconds, v.getNanos])
  end
end