Module: AssOle::Snippets::Shared::Transaction Deprecated

Defined in:
lib/ass_ole/snippets/shared.rb

Overview

Deprecated.

Use InTransactionDo instead

TODO:

remove module in v1.0.0

Do in transaction wrapper

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.depricateObject



118
119
120
121
122
123
# File 'lib/ass_ole/snippets/shared.rb', line 118

def self.depricate
  Kernel.warn '[DEPRICATION]'\
    " '#{self.name}` is deprecated and will be"\
    " removed soon. Please use "\
    '\'AssOle::Snipptes::Shared::InTransactionDo` instead.'\
end

Instance Method Details

#do_in_transaction(&block) ⇒ Object

Deprecated.

Raises:

  • (RuntimeError)

    if nested transaction



141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
# File 'lib/ass_ole/snippets/shared.rb', line 141

def do_in_transaction(&block)
  AssOle::Snippets::Shared::Transaction.depricate
  fail ArgumentError, 'Block require' unless block_given?
  fail 'Nested transaction is mindless in 1C runtime' if\
    transactionActive
  begin
    beginTransAction
    r = instance_eval(&block)
    commitTransAction
    r
  rescue StandardError => e
    rollBackTransaction
    raise e
  end
end