class Ketsuban::Adapter::PostgreSQLAdapter

Public Instance Methods

fetch_next_id() click to toggle source

@override

# File lib/ketsuban/adapters/postgresql_adapter.rb, line 7
def fetch_next_id
  last_value_result = @model_class
                      .connection
                      .execute("select last_value, is_called from #{@model_class.sequence_name}\;")

  last_value = last_value_result.getvalue(0, 0)
  is_called = last_value_result.getvalue(0, 1)

  if is_called
    last_value.next
  else
    last_value
  end
end
increment_sequence(now_id) click to toggle source

@override

# File lib/ketsuban/adapters/postgresql_adapter.rb, line 23
def increment_sequence(now_id)
  @model_class.connection.set_pk_sequence!(@model_class.table_name, now_id)
end