Module: Sequel::Plugins::InstanceHooks::InstanceMethods
- Defined in:
- lib/sequel/plugins/instance_hooks.rb
Instance Method Summary collapse
-
#after_destroy ⇒ Object
Run after destroy instance hooks.
-
#after_save ⇒ Object
Run after save instance hooks.
-
#after_validation ⇒ Object
Run after validation instance hooks.
-
#before_destroy ⇒ Object
Run before_destroy instance hooks.
-
#before_save ⇒ Object
Run before_save instance hooks.
Instance Method Details
#after_destroy ⇒ Object
Run after destroy instance hooks.
65 66 67 68 69 70 71 72 73 74 75 76 |
# File 'lib/sequel/plugins/instance_hooks.rb', line 65 def after_destroy super return unless @instance_hooks if ad = @instance_hooks[:after_destroy_commit] db.after_commit{ad.each(&:call)} end run_after_instance_hooks(:after_destroy) @instance_hooks.delete(:after_destroy) @instance_hooks.delete(:before_destroy) @instance_hooks.delete(:after_destroy_commit) @instance_hooks.delete(:after_destroy_rollback) end |
#after_save ⇒ Object
Run after save instance hooks.
86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/sequel/plugins/instance_hooks.rb', line 86 def after_save super return unless @instance_hooks if (ac = @instance_hooks[:after_commit]) db.after_commit{ac.each(&:call)} end run_after_instance_hooks(:after_save) @instance_hooks.delete(:after_save) @instance_hooks.delete(:before_save) @instance_hooks.delete(:after_validation) @instance_hooks.delete(:before_validation) @instance_hooks.delete(:after_commit) @instance_hooks.delete(:after_rollback) end |
#after_validation ⇒ Object
Run after validation instance hooks.
79 80 81 82 83 |
# File 'lib/sequel/plugins/instance_hooks.rb', line 79 def after_validation super return unless @instance_hooks run_after_instance_hooks(:after_validation) end |
#before_destroy ⇒ Object
Run before_destroy instance hooks.
102 103 104 105 106 107 108 |
# File 'lib/sequel/plugins/instance_hooks.rb', line 102 def before_destroy return super unless @instance_hooks if adr = @instance_hooks[:after_destroy_rollback] db.after_rollback{adr.each(&:call)} end run_before_instance_hooks(:before_destroy) == false ? false : super end |
#before_save ⇒ Object
Run before_save instance hooks.
111 112 113 114 115 116 117 |
# File 'lib/sequel/plugins/instance_hooks.rb', line 111 def before_save return super unless @instance_hooks if ar = @instance_hooks[:after_rollback] db.after_rollback{ar.each(&:call)} end run_before_instance_hooks(:before_save) == false ? false : super end |