Class: Lims::Core::Persistence::StateList

Inherits:
Set
  • Object
show all
Defined in:
lib/lims-core/persistence/state_list.rb

Overview

A immutable list of ResourceState.

Direct Known Subclasses

StateGroup

Instance Method Summary collapse

Instance Method Details

#destroyObject



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

#groupsList<StateGroup>

Returns:



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

#loadObject



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_statusObject



48
49
50
51
# File 'lib/lims-core/persistence/state_list.rb', line 48

def reset_status
  each { |state|
    state.reset }
end

#saveObject



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