about summary refs log tree commit homepage
path: root/lib/rainbows/rev/thread.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rainbows/rev/thread.rb')
-rw-r--r--lib/rainbows/rev/thread.rb45
1 files changed, 0 insertions, 45 deletions
diff --git a/lib/rainbows/rev/thread.rb b/lib/rainbows/rev/thread.rb
deleted file mode 100644
index 276b315..0000000
--- a/lib/rainbows/rev/thread.rb
+++ /dev/null
@@ -1,45 +0,0 @@
-# -*- encoding: binary -*-
-# :enddoc:
-require 'thread'
-require 'rainbows/rev/master'
-
-RUBY_VERSION =~ %r{\A1\.8} and
-  warn "Rev and Threads do not mix well under Ruby 1.8"
-
-module Rainbows
-  module Rev
-
-    class ThreadClient < Client
-
-      def app_call
-        KATO.delete(self)
-        disable if enabled?
-        @env[RACK_INPUT] = @input
-        app_dispatch # must be implemented by subclass
-      end
-
-      # this is only called in the master thread
-      def response_write(response)
-        alive = @hp.next? && G.alive
-        rev_write_response(response, alive)
-        return quit unless alive && :close != @state
-
-        @state = :headers
-      end
-
-      # fails-safe application dispatch, we absolutely cannot
-      # afford to fail or raise an exception (killing the thread)
-      # here because that could cause a deadlock and we'd leak FDs
-      def app_response
-        begin
-          @env[REMOTE_ADDR] = @_io.kgio_addr
-          APP.call(@env.update(RACK_DEFAULTS))
-        rescue => e
-          Error.app(e) # we guarantee this does not raise
-          [ 500, {}, [] ]
-        end
-      end
-
-    end
-  end
-end