Class: Valkyrie::Sequel::Persister::SaveAllPersister
- Inherits:
-
Object
- Object
- Valkyrie::Sequel::Persister::SaveAllPersister
- Defined in:
- lib/valkyrie/sequel/persister.rb
Defined Under Namespace
Classes: CompositePersister, Factory
Instance Attribute Summary collapse
-
#relation ⇒ Object
readonly
Returns the value of attribute relation.
-
#resource_factory ⇒ Object
readonly
Returns the value of attribute resource_factory.
-
#resources ⇒ Object
readonly
Returns the value of attribute resources.
Instance Method Summary collapse
- #converted_resources ⇒ Object
-
#initialize(resources:, relation:, resource_factory:) ⇒ SaveAllPersister
constructor
A new instance of SaveAllPersister.
- #persist! ⇒ Object
Constructor Details
#initialize(resources:, relation:, resource_factory:) ⇒ SaveAllPersister
Returns a new instance of SaveAllPersister.
80 81 82 83 84 |
# File 'lib/valkyrie/sequel/persister.rb', line 80 def initialize(resources:, relation:, resource_factory:) @resources = resources @relation = relation @resource_factory = resource_factory end |
Instance Attribute Details
#relation ⇒ Object (readonly)
Returns the value of attribute relation.
79 80 81 |
# File 'lib/valkyrie/sequel/persister.rb', line 79 def relation @relation end |
#resource_factory ⇒ Object (readonly)
Returns the value of attribute resource_factory.
79 80 81 |
# File 'lib/valkyrie/sequel/persister.rb', line 79 def resource_factory @resource_factory end |
#resources ⇒ Object (readonly)
Returns the value of attribute resources.
79 80 81 |
# File 'lib/valkyrie/sequel/persister.rb', line 79 def resources @resources end |
Instance Method Details
#converted_resources ⇒ Object
93 94 95 96 97 98 99 100 101 |
# File 'lib/valkyrie/sequel/persister.rb', line 93 def converted_resources @converted_resources ||= resources.map do |resource| output = resource_factory.from_resource(resource: resource) output[:lock_version] ||= 0 output[:created_at] ||= Time.now.utc output[:updated_at] ||= Time.now.utc output end end |
#persist! ⇒ Object
86 87 88 89 90 91 |
# File 'lib/valkyrie/sequel/persister.rb', line 86 def persist! return [] if resources.empty? Array.wrap( relation.multi_insert(converted_resources) ) end |