diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-10 17:34:39 +0200 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-10 17:34:39 +0200 |
commit | bed8e682e80a810c66f309faf7865872aadc85cc (patch) | |
tree | 57509b1a08d9438c12b88c36aef9a90abca72311 /lib/evendoors/spin.rb | |
parent | d916c197fd06eb5f818e2bd75d5d1312c4758975 (diff) | |
download | edoors-ruby-bed8e682e80a810c66f309faf7865872aadc85cc.zip edoors-ruby-bed8e682e80a810c66f309faf7865872aadc85cc.tar.gz |
Spin register itself in its class, aka singleton
Diffstat (limited to 'lib/evendoors/spin.rb')
-rw-r--r-- | lib/evendoors/spin.rb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/evendoors/spin.rb b/lib/evendoors/spin.rb index 31904e8..6b88a55 100644 --- a/lib/evendoors/spin.rb +++ b/lib/evendoors/spin.rb @@ -10,13 +10,14 @@ module EvenDoors @sys_fifo = [] # system particles fifo list @app_fifo = [] # application particles fifo list # + @spin = nil @run = false @debug_routing = false @debug_errors = false # class << self # - attr_accessor :run, :debug_routing, :debug_errors + attr_accessor :spin, :run, :debug_routing, :debug_errors # def release_p p # hope there is no circular loop @@ -66,6 +67,8 @@ module EvenDoors # def initialize n, args={} super n, nil + raise EvenDoors::Exception.new "do not try to initialize more than one spin" if not self.class.spin.nil? + self.class.spin = self self.class.debug_errors = args[:debug_errors] || false self.class.debug_routing = args[:debug_routing] || false end |