Module: Obsidian::Rails::ModelUpdateTracker
- Defined in:
- lib/obsidian/rails/model_update_tracker.rb
Defined Under Namespace
Classes: Delta
Class Attribute Summary collapse
-
.created_delta ⇒ Object
Returns the value of attribute created_delta.
-
.destroyed_delta ⇒ Object
Returns the value of attribute destroyed_delta.
-
.updated_delta ⇒ Object
Returns the value of attribute updated_delta.
Class Method Summary collapse
- .after_create(model) ⇒ Object
- .after_destroy(model) ⇒ Object
- .after_transaction_commit ⇒ Object
- .after_transaction_exception ⇒ Object
- .after_transaction_rollback ⇒ Object
- .after_update(model) ⇒ Object
- .log(msg) ⇒ Object
- .reset ⇒ Object
Class Attribute Details
.created_delta ⇒ Object
Returns the value of attribute created_delta.
44 45 46 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 44 def created_delta @created_delta end |
.destroyed_delta ⇒ Object
Returns the value of attribute destroyed_delta.
44 45 46 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 44 def destroyed_delta @destroyed_delta end |
.updated_delta ⇒ Object
Returns the value of attribute updated_delta.
44 45 46 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 44 def updated_delta @updated_delta end |
Class Method Details
.after_create(model) ⇒ Object
51 52 53 54 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 51 def after_create(model) log("Model create #{model} is a #{model.class}") created_delta << model end |
.after_destroy(model) ⇒ Object
61 62 63 64 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 61 def after_destroy(model) log("Model destroy #{model}") destroyed_delta << model end |
.after_transaction_commit ⇒ Object
66 67 68 69 70 71 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 66 def after_transaction_commit log("Commit transaction") created_delta.transaction_committed updated_delta.transaction_committed destroyed_delta.transaction_committed end |
.after_transaction_exception ⇒ Object
80 81 82 83 84 85 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 80 def after_transaction_exception log("Exception in transaction}") created_delta.transaction_rolled_back updated_delta.transaction_rolled_back destroyed_delta.transaction_rolled_back end |
.after_transaction_rollback ⇒ Object
73 74 75 76 77 78 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 73 def after_transaction_rollback log("Rollback of transaction}") created_delta.transaction_rolled_back updated_delta.transaction_rolled_back destroyed_delta.transaction_rolled_back end |
.after_update(model) ⇒ Object
56 57 58 59 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 56 def after_update(model) log("Model update #{model}") updated_delta << model end |
.log(msg) ⇒ Object
87 88 89 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 87 def log(msg) # puts msg end |
.reset ⇒ Object
45 46 47 48 49 |
# File 'lib/obsidian/rails/model_update_tracker.rb', line 45 def reset created_delta.reset destroyed_delta.reset updated_delta.reset end |