Module: CallbackSkipper

Extended by:
ActiveSupport::Concern
Defined in:
lib/callback_skipper.rb,
lib/callback_skipper/version.rb

Defined Under Namespace

Classes: CallbackNotDefinedError

Constant Summary collapse

VERSION =
"1.0.0"

Instance Method Summary collapse

Instance Method Details

#skip_callback(*args) ⇒ Object

skip a specific callback for the given instance



10
11
12
13
14
15
# File 'lib/callback_skipper.rb', line 10

def skip_callback(*args)
  raise CallbackNotDefinedError.new("Callback not defined matching: #{self.class.name} #{args}") unless callback_defined?(*args)
  instance = self
  args << {:if => lambda { self == instance }}
  self.class.skip_callback *args
end