Class: Lims::Core::Persistence::StateList
- Defined in:
- lib/lims-core/persistence/state_list.rb
Overview
A immutable list of ResourceState.
Direct Known Subclasses
Instance Method Summary collapse
- #destroy ⇒ Object
- #groups ⇒ List<StateGroup>
- #load ⇒ Object
- #new(&block) ⇒ Object
- #reset_status ⇒ Object
- #save ⇒ Object
Instance Method Details
#destroy ⇒ Object
35 36 37 38 39 |
# File 'lib/lims-core/persistence/state_list.rb', line 35 def destroy groups.each do |group| group.destroy end end |
#groups ⇒ List<StateGroup>
9 10 11 12 13 14 15 |
# File 'lib/lims-core/persistence/state_list.rb', line 9 def groups persistor_order = map { |state| state.persistor}.uniq grouped = group_by { |state| state.persistor } persistor_order.map do |persistor| StateGroup.new(persistor, grouped[persistor]) end end |
#load ⇒ Object
42 43 44 45 46 |
# File 'lib/lims-core/persistence/state_list.rb', line 42 def load groups.each do |group| group.load end end |
#new(&block) ⇒ Object
25 26 27 |
# File 'lib/lims-core/persistence/state_list.rb', line 25 def new(&block) self.class.new(block.call) end |
#reset_status ⇒ Object
48 49 50 51 |
# File 'lib/lims-core/persistence/state_list.rb', line 48 def reset_status each { |state| state.reset } end |
#save ⇒ Object
29 30 31 32 33 |
# File 'lib/lims-core/persistence/state_list.rb', line 29 def save groups.each do |group| group.save end end |