Module: Sequel::Plugins::HookClassMethods::InstanceMethods
- Defined in:
- lib/sequel/plugins/hook_class_methods.rb
Instance Method Summary collapse
Instance Method Details
#after_destroy ⇒ Object
156 157 158 159 160 161 162 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 156 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
164 165 166 167 168 169 170 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 164 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
172 173 174 175 176 177 178 179 180 181 182 183 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 172 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
185 186 187 188 189 190 191 192 193 194 195 196 |
# File 'lib/sequel/plugins/hook_class_methods.rb', line 185 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 |