Class: SDM::NodeHistory
- Inherits:
-
Object
- Object
- SDM::NodeHistory
- Defined in:
- lib/models/porcelain.rb
Overview
NodeHistory records the state of a Node at a given point in time, where every change (create, update and delete) to a Node produces an NodeHistory record.
Instance Attribute Summary collapse
-
#activity_id ⇒ Object
The unique identifier of the Activity that produced this change to the Node.
-
#deleted_at ⇒ Object
If this Node was deleted, the time it was deleted.
-
#node ⇒ Object
The complete Node state at this time.
-
#timestamp ⇒ Object
The time at which the Node state was recorded.
Instance Method Summary collapse
-
#initialize(activity_id: nil, deleted_at: nil, node: nil, timestamp: nil) ⇒ NodeHistory
constructor
A new instance of NodeHistory.
- #to_json(options = {}) ⇒ Object
Constructor Details
permalink #initialize(activity_id: nil, deleted_at: nil, node: nil, timestamp: nil) ⇒ NodeHistory
Returns a new instance of NodeHistory.
9778 9779 9780 9781 9782 9783 9784 9785 9786 9787 9788 |
# File 'lib/models/porcelain.rb', line 9778 def initialize( activity_id: nil, deleted_at: nil, node: nil, timestamp: nil ) @activity_id = activity_id == nil ? "" : activity_id @deleted_at = deleted_at == nil ? nil : deleted_at @node = node == nil ? nil : node @timestamp = == nil ? nil : end |
Instance Attribute Details
permalink #activity_id ⇒ Object
The unique identifier of the Activity that produced this change to the Node. May be empty for some system-initiated updates.
9770 9771 9772 |
# File 'lib/models/porcelain.rb', line 9770 def activity_id @activity_id end |
permalink #deleted_at ⇒ Object
If this Node was deleted, the time it was deleted.
9772 9773 9774 |
# File 'lib/models/porcelain.rb', line 9772 def deleted_at @deleted_at end |
permalink #node ⇒ Object
The complete Node state at this time.
9774 9775 9776 |
# File 'lib/models/porcelain.rb', line 9774 def node @node end |
permalink #timestamp ⇒ Object
The time at which the Node state was recorded.
9776 9777 9778 |
# File 'lib/models/porcelain.rb', line 9776 def @timestamp end |
Instance Method Details
permalink #to_json(options = {}) ⇒ Object
[View source]
9790 9791 9792 9793 9794 9795 9796 |
# File 'lib/models/porcelain.rb', line 9790 def to_json( = {}) hash = {} self.instance_variables.each do |var| hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var end hash.to_json end |