Module: SaveQueue::Object
- Defined in:
- lib/save_queue/object.rb
Defined Under Namespace
Modules: RunAlwaysFirst
Class Method Summary collapse
-
.included(base) ⇒ Object
class_inheritable_accessor :queue_class.
Instance Method Summary collapse
- #has_unsaved_changes? ⇒ Boolean
- #initialize(*args) ⇒ Object
- #mark_as_changed ⇒ Object
- #save_queue ⇒ Object
Class Method Details
Instance Method Details
#has_unsaved_changes? ⇒ Boolean
47 48 49 50 |
# File 'lib/save_queue/object.rb', line 47 def has_unsaved_changes? status = instance_variable_get("@_changed_mark") status.nil? ? false : status end |
#initialize(*args) ⇒ Object
33 34 35 36 37 38 39 40 41 |
# File 'lib/save_queue/object.rb', line 33 def initialize(*args) queue = self.class.queue_class.new instance_variable_set "@_save_queue", queue super if defined?(super) # this will make RunAlwaysFirst methods triggered first in inheritance tree extend RunAlwaysFirst end |
#mark_as_changed ⇒ Object
43 44 45 |
# File 'lib/save_queue/object.rb', line 43 def mark_as_changed instance_variable_set "@_changed_mark", true end |
#save_queue ⇒ Object
52 53 54 |
# File 'lib/save_queue/object.rb', line 52 def save_queue instance_variable_get "@_save_queue" end |