Module: Rollwire::Patcher

Defined in:
lib/rollwire/patcher.rb

Class Method Summary collapse

Class Method Details

.install!Object



7
8
9
10
11
12
# File 'lib/rollwire/patcher.rb', line 7

def install!
  validate!
  install_database_statements_patch
  install_transaction_manager_patch
  WriteCounter.start!
end

.installed?Boolean

Returns:

  • (Boolean)


14
15
16
17
# File 'lib/rollwire/patcher.rb', line 14

def installed?
  database_statements.ancestors.include?(DatabaseStatementsPatch) &&
    transaction_manager.ancestors.include?(TransactionManagerPatch)
end

.validate!Object



19
20
21
22
23
24
25
26
27
# File 'lib/rollwire/patcher.rb', line 19

def validate!
  validate_method(
    database_statements,
    :transaction,
    required_keywords: %i[requires_new isolation joinable],
    requires_block: true
  )
  validate_method(transaction_manager, :begin_transaction, required_keywords: %i[isolation joinable])
end