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.



438
439
440
# File 'lib/libsql.rb', line 438

def initialize(inner)
  @inner = inner
end

Instance Method Details

#closed?Boolean

Returns:

  • (Boolean)


471
472
473
# File 'lib/libsql.rb', line 471

def closed?
  @inner.nil?
end

#commitObject

Raises:



464
465
466
467
468
469
# File 'lib/libsql.rb', line 464

def commit
  raise ClosedException if closed?

  @inner.commit
  @inner = nil
end

#execute_batch(sql) ⇒ Object

Raises:



451
452
453
454
455
# File 'lib/libsql.rb', line 451

def execute_batch(sql)
  raise ClosedException if closed?

  @inner.execute_batch(sql)
end

#prepare(sql) ⇒ Object

Raises:



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

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:



457
458
459
460
461
462
# File 'lib/libsql.rb', line 457

def rollback
  raise ClosedException if closed?

  @inner.rollback
  @inner = nil
end