Sha256: 165b5549a714d19948940842f64212c4cc63c3faf2296de1d36dea3bdfd33d9e

Contents?: true

Size: 432 Bytes

Versions: 5

Compression:

Stored size: 432 Bytes

Contents

require 'rack/fiber_pool'

module Spontaneous::Rack
  class FiberPool
    def initialize(app, options = {})
      @target_app = app
      @options    = options
    end

    def call(env)
      app.call(env)
    end

    def app
      @app ||= wrap_target_app
    end

    def wrap_target_app
      if Spontaneous.async?
        ::Rack::FiberPool.new(@target_app, @options)
      else
        @target_app
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
spontaneous-0.2.0.alpha7 lib/spontaneous/rack/fiber_pool.rb
spontaneous-0.2.0.alpha6 lib/spontaneous/rack/fiber_pool.rb
spontaneous-0.2.0.alpha5 lib/spontaneous/rack/fiber_pool.rb
spontaneous-0.2.0.alpha4 lib/spontaneous/rack/fiber_pool.rb
spontaneous-0.2.0.alpha3 lib/spontaneous/rack/fiber_pool.rb