Module: Zertico::Organizer
- Defined in:
- lib/zertico/organizer.rb
Instance Attribute Summary collapse
-
#interactors_classes ⇒ Object
readonly
Returns the value of attribute interactors_classes.
-
#performed ⇒ Object
readonly
Returns the value of attribute performed.
Instance Method Summary collapse
Instance Attribute Details
#interactors_classes ⇒ Object (readonly)
Returns the value of attribute interactors_classes.
3 4 5 |
# File 'lib/zertico/organizer.rb', line 3 def interactors_classes @interactors_classes end |
#performed ⇒ Object (readonly)
Returns the value of attribute performed.
3 4 5 |
# File 'lib/zertico/organizer.rb', line 3 def performed @performed end |
Instance Method Details
#organize(interactors) ⇒ Object
5 6 7 8 |
# File 'lib/zertico/organizer.rb', line 5 def organize(interactors) @performed = [] @interactors_classes = Array(interactors) end |
#perform(params) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/zertico/organizer.rb', line 10 def perform(params) @params = params interactors_classes.each do |interactor_class| interactor = interactor_class.new interactor.perform(@params) performed << interactor end true rescue Zertico::Exceptions::RollbackException rollback end |
#rollback ⇒ Object
22 23 24 |
# File 'lib/zertico/organizer.rb', line 22 def rollback performed.map(&:rollback) end |