Class: Jumbotron::Canonical::ChangeSet
- Inherits:
-
Object
- Object
- Jumbotron::Canonical::ChangeSet
- Includes:
- Enumerable
- Defined in:
- app/models/jumbotron/canonical.rb
Overview
Transaction-local accumulator for material canonical attribute changes.
Defined Under Namespace
Classes: Entry
Instance Method Summary collapse
- #each ⇒ Object
-
#initialize ⇒ ChangeSet
constructor
A new instance of ChangeSet.
- #record(subject:, attribute:, previous:, new_value:) ⇒ Object
Constructor Details
#initialize ⇒ ChangeSet
Returns a new instance of ChangeSet.
93 94 95 |
# File 'app/models/jumbotron/canonical.rb', line 93 def initialize @entries = [] end |
Instance Method Details
#each ⇒ Object
110 111 112 |
# File 'app/models/jumbotron/canonical.rb', line 110 def each(&) entries.each(&) end |
#record(subject:, attribute:, previous:, new_value:) ⇒ Object
97 98 99 100 101 102 103 104 105 106 |
# File 'app/models/jumbotron/canonical.rb', line 97 def record(subject:, attribute:, previous:, new_value:) return if serialize(previous) == serialize(new_value) @entries << Entry.new( subject: subject, attribute: attribute.to_s, previous: previous, new_value: new_value ) end |