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



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

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

#buffered_reader(v) ⇒ Object



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

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



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

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

#clob(v) ⇒ Object



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

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

#date(v) ⇒ Object



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

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

#decimal(v) ⇒ Object



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

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

#h2_clob(v) ⇒ Object



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

def h2_clob(v) Sequel::SQL::Blob.new(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



73
74
75
76
77
78
79
80
81
82
83
84
# File 'lib/sequel/adapters/jdbc/oracle.rb', line 73

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



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

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