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,
lib/sequel/adapters/jdbc/postgresql.rb

Overview

JAVA_H2_CLOB = Java::OrgH2Jdbc::JdbcClob

Constant Summary collapse

LF =
"\n".freeze

Instance Method Summary collapse

Instance Method Details

#blob(v) ⇒ Object



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

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

#buffered_reader(v) ⇒ Object



649
650
651
652
653
654
655
656
657
658
# File 'lib/sequel/adapters/jdbc.rb', line 649

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



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

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

#clob(v) ⇒ Object



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

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

#date(v) ⇒ Object



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

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

#decimal(v) ⇒ Object



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

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

#h2_clob(v) ⇒ Object



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

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

#jtds_clob(v) ⇒ Object



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

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

#pg_array(v) ⇒ Object

Convert Java::OrgPostgresqlJdbc4::Jdbc4Array to ruby arrays



49
50
51
# File 'lib/sequel/adapters/jdbc/postgresql.rb', line 49

def pg_array(v)
  _pg_array(v.array)
end

#pg_object(v) ⇒ Object

Convert Java::OrgPostgresqlUtil::PGobject to ruby strings



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

def pg_object(v)
  v.to_string
end

#time(v) ⇒ Object



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

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