Class: Moory::Logistic::Controller

Inherits:
Object
  • Object
show all
Defined in:
lib/moory/logistic.rb

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ Controller

Returns a new instance of Controller.



47
48
49
50
# File 'lib/moory/logistic.rb', line 47

def initialize(config)
  @config = config
  prepare_units
end

Instance Method Details

#active_unitObject



62
63
64
# File 'lib/moory/logistic.rb', line 62

def active_unit
  units[@focus]
end

#deferralsObject



66
67
68
# File 'lib/moory/logistic.rb', line 66

def deferrals
  @deferrals ||= []
end

#issue(stimulus) ⇒ Object



70
71
72
73
74
75
76
# File 'lib/moory/logistic.rb', line 70

def issue(stimulus)
  @consequences = []

  understand?(stimulus) ?
    distribute(stimulus) :
    nil
end

#prepare_unitsObject



52
53
54
55
56
# File 'lib/moory/logistic.rb', line 52

def prepare_units
  create_units
  wire_units
  focus_on(@config[:basis])
end

#understand?(stimulus) ⇒ Boolean

Returns:

  • (Boolean)


78
79
80
# File 'lib/moory/logistic.rb', line 78

def understand?(stimulus)
  active_unit.understand?(stimulus)
end

#unitsObject



58
59
60
# File 'lib/moory/logistic.rb', line 58

def units
  @units ||= {}
end