Module: Sequel::Plugins::HookClassMethods::InstanceMethods
- Defined in:
- lib/sequel/plugins/hook_class_methods.rb
Instance Method Summary collapse
Instance Method Details
#after_destroy ⇒ Object
159 160 161 162 163 164 165 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 159 def after_destroy super model.hook_blocks(:after_destroy){|b| instance_eval(&b)} if model.has_hooks?(:after_destroy_commit) db.after_commit{model.hook_blocks(:after_destroy_commit){|b| instance_eval(&b)}} end end |
#after_save ⇒ Object
167 168 169 170 171 172 173 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 167 def after_save super model.hook_blocks(:after_save){|b| instance_eval(&b)} if model.has_hooks?(:after_commit) db.after_commit{model.hook_blocks(:after_commit){|b| instance_eval(&b)}} end end |
#before_destroy ⇒ Object
175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 175 def before_destroy model.hook_blocks(:before_destroy) do |b| if instance_eval(&b) == false Sequel::Deprecation.deprecate("Having before_destory hook block return false to stop evaluation of further before_destroy hook blocks", "Instead, call cancel_action inside before_destroy hook block") return false end end super if model.has_hooks?(:after_destroy_rollback) db.after_rollback{model.hook_blocks(:after_destroy_rollback){|b| instance_eval(&b)}} end end |
#before_save ⇒ Object
188 189 190 191 192 193 194 195 196 197 198 199 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 188 def before_save model.hook_blocks(:before_save) do |b| if instance_eval(&b) == false Sequel::Deprecation.deprecate("Having before_save hook block return false to stop evaluation of further before_save hook blocks", "Instead, call cancel_action inside before_save hook block") return false end end super if model.has_hooks?(:after_rollback) db.after_rollback{model.hook_blocks(:after_rollback){|b| instance_eval(&b)}} end end |