Class: Sequel::JDBC::Dataset::TYPE_TRANSLATOR

Inherits:
Object
  • Object
show all
Defined in:
lib/sequel/adapters/jdbc.rb,
lib/sequel/adapters/jdbc/h2.rb,
lib/sequel/adapters/jdbc/jtds.rb,
lib/sequel/adapters/jdbc/oracle.rb

Overview

JAVA_H2_CLOB = Java::OrgH2Jdbc::JdbcClob

Constant Summary collapse

LF =
"\n".freeze

Instance Method Summary collapse

Instance Method Details

#blob(v) ⇒ Object



629
# File 'lib/sequel/adapters/jdbc.rb', line 629

def blob(v) Sequel::SQL::Blob.new(String.from_java_bytes(v.getBytes(1, v.length))) end

#buffered_reader(v) ⇒ Object



631
632
633
634
635
636
637
638
639
640
# File 'lib/sequel/adapters/jdbc.rb', line 631

def buffered_reader(v)
  lines = ""
  c = false
  while(line = v.read_line) do
    lines << LF if c
    lines << line
    c ||= true
  end
  lines
end

#byte_array(v) ⇒ Object



628
# File 'lib/sequel/adapters/jdbc.rb', line 628

def byte_array(v) Sequel::SQL::Blob.new(String.from_java_bytes(v)) end

#clob(v) ⇒ Object



630
# File 'lib/sequel/adapters/jdbc.rb', line 630

def clob(v) Sequel::SQL::Blob.new(v.getSubString(1, v.length)) end

#date(v) ⇒ Object



626
# File 'lib/sequel/adapters/jdbc.rb', line 626

def date(v) Date.civil(v.getYear + 1900, v.getMonth + 1, v.getDate) end

#decimal(v) ⇒ Object



627
# File 'lib/sequel/adapters/jdbc.rb', line 627

def decimal(v) BigDecimal.new(v.to_string) end

#h2_clob(v) ⇒ Object



175
# File 'lib/sequel/adapters/jdbc/h2.rb', line 175

def h2_clob(v) v.getSubString(1, v.length) end

#jtds_clob(v) ⇒ Object



18
# File 'lib/sequel/adapters/jdbc/jtds.rb', line 18

def jtds_clob(v) Sequel::SQL::Blob.new(v.getSubString(1, v.length)) end

#oracle_decimal(v) ⇒ Object



80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/sequel/adapters/jdbc/oracle.rb', line 80

def oracle_decimal(v)
  if v.scale == 0
    i = v.long_value
    if v.equals(JAVA_BIG_DECIMAL.new(i))
      i
    else
      decimal(v)
    end
  else
    decimal(v)
  end
end

#time(v) ⇒ Object



625
# File 'lib/sequel/adapters/jdbc.rb', line 625

def time(v) Sequel.string_to_time(v.to_string) end