Class: Libsql::Transaction

Inherits:
Object
  • Object
show all
Includes:
Prepareable
Defined in:
lib/libsql.rb

Instance Method Summary collapse

Methods included from Prepareable

#execute, #query

Constructor Details

#initialize(inner) ⇒ Transaction

Returns a new instance of Transaction.



436
437
438
# File 'lib/libsql.rb', line 436

def initialize(inner)
  @inner = inner
end

Instance Method Details

#closed?Boolean

Returns:

  • (Boolean)


469
470
471
# File 'lib/libsql.rb', line 469

def closed?
  @inner.nil?
end

#commitObject

Raises:



462
463
464
465
466
467
# File 'lib/libsql.rb', line 462

def commit
  raise ClosedException if closed?

  @inner.commit
  @inner = nil
end

#execute_batch(sql) ⇒ Object

Raises:



449
450
451
452
453
# File 'lib/libsql.rb', line 449

def execute_batch(sql)
  raise ClosedException if closed?

  @inner.execute_batch(sql)
end

#prepare(sql) ⇒ Object

Raises:



440
441
442
443
444
445
446
447
# File 'lib/libsql.rb', line 440

def prepare(sql)
  raise ClosedException if closed?

  stmt = Statement.new @inner.prepare sql
  return stmt unless block_given?

  begin yield stmt ensure stmt.close end
end

#rollbackObject

Raises:



455
456
457
458
459
460
# File 'lib/libsql.rb', line 455

def rollback
  raise ClosedException if closed?

  @inner.rollback
  @inner = nil
end