diff options
author | Eric Wong <normalperson@yhbt.net> | 2010-12-28 17:59:27 -0800 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2010-12-28 18:00:04 -0800 |
commit | 40445641f11f01c6a24bf96c8b80eed5fd33a512 (patch) | |
tree | 57a7652cc03f46407d51babfd04d72d1c401ac99 /lib/rainbows/fiber/rev | |
parent | 3495d59763e6159975debf32728dc53fc41c5ea1 (diff) | |
download | rainbows-40445641f11f01c6a24bf96c8b80eed5fd33a512.tar.gz |
complete Rev => Coolio renaming
We use Cool.io internally everywhere now, but preserve Rev-based models for anybody using them.
Diffstat (limited to 'lib/rainbows/fiber/rev')
-rw-r--r-- | lib/rainbows/fiber/rev/heartbeat.rb | 15 | ||||
-rw-r--r-- | lib/rainbows/fiber/rev/methods.rb | 47 | ||||
-rw-r--r-- | lib/rainbows/fiber/rev/server.rb | 32 | ||||
-rw-r--r-- | lib/rainbows/fiber/rev/sleeper.rb | 15 |
4 files changed, 0 insertions, 109 deletions
diff --git a/lib/rainbows/fiber/rev/heartbeat.rb b/lib/rainbows/fiber/rev/heartbeat.rb deleted file mode 100644 index f9ef573..0000000 --- a/lib/rainbows/fiber/rev/heartbeat.rb +++ /dev/null @@ -1,15 +0,0 @@ -# -*- encoding: binary -*- -# :enddoc: -class Rainbows::Fiber::Rev::Heartbeat < Rev::TimerWatcher - G = Rainbows::G - - # ZZ gets populated by read_expire in rainbows/fiber/io/methods - ZZ = Rainbows::Fiber::ZZ - def on_timer - exit if (! G.tick && G.cur <= 0) - now = Time.now - fibs = [] - ZZ.delete_if { |fib, time| now >= time ? fibs << fib : ! fib.alive? } - fibs.each { |fib| fib.resume if fib.alive? } - end -end diff --git a/lib/rainbows/fiber/rev/methods.rb b/lib/rainbows/fiber/rev/methods.rb deleted file mode 100644 index 4421fd3..0000000 --- a/lib/rainbows/fiber/rev/methods.rb +++ /dev/null @@ -1,47 +0,0 @@ -# -*- encoding: binary -*- -# :enddoc: -module Rainbows::Fiber::Rev::Methods - class Watcher < Rev::IOWatcher - def initialize(fio, flag) - @f = Fiber.current - super(fio, flag) - attach(Rev::Loop.default) - end - - def on_readable - @f.resume - end - - alias on_writable on_readable - end - - def close - @w.detach if defined?(@w) && @w.attached? - @r.detach if defined?(@r) && @r.attached? - super - end - - def kgio_wait_writable - @w = Watcher.new(self, :w) unless defined?(@w) - @w.enable unless @w.enabled? - Fiber.yield - @w.disable - end - - def kgio_wait_readable - @r = Watcher.new(self, :r) unless defined?(@r) - @r.enable unless @r.enabled? - Fiber.yield - @r.disable - end -end - -[ - Rainbows::Fiber::IO, - Rainbows::Client, - # the next two trigger autoload, ugh, oh well... - Rainbows::Fiber::IO::Socket, - Rainbows::Fiber::IO::Pipe -].each do |klass| - klass.__send__(:include, Rainbows::Fiber::Rev::Methods) -end diff --git a/lib/rainbows/fiber/rev/server.rb b/lib/rainbows/fiber/rev/server.rb deleted file mode 100644 index 9998cde..0000000 --- a/lib/rainbows/fiber/rev/server.rb +++ /dev/null @@ -1,32 +0,0 @@ -# -*- encoding: binary -*- -# :enddoc: -class Rainbows::Fiber::Rev::Server < Rev::IOWatcher - G = Rainbows::G - include Rainbows::ProcessClient - - def to_io - @io - end - - def initialize(io) - @io = io - super(self, :r) - end - - def close - detach if attached? - @io.close - end - - def on_readable - return if G.cur >= MAX - c = @io.kgio_tryaccept and Fiber.new { process(c) }.resume - end - - def process(io) - G.cur += 1 - process_client(io) - ensure - G.cur -= 1 - end -end diff --git a/lib/rainbows/fiber/rev/sleeper.rb b/lib/rainbows/fiber/rev/sleeper.rb deleted file mode 100644 index 51f4527..0000000 --- a/lib/rainbows/fiber/rev/sleeper.rb +++ /dev/null @@ -1,15 +0,0 @@ -# -*- encoding: binary -*- -# :enddoc: -class Rainbows::Fiber::Rev::Sleeper < Rev::TimerWatcher - - def initialize(seconds) - @f = Fiber.current - super(seconds, false) - attach(Rev::Loop.default) - Fiber.yield - end - - def on_timer - @f.resume - end -end |