Sha256: 996a2a130e9508e517df9e8fd2f172efdc9baffcfc96acac533d77b74136d576

Contents?: true

Size: 1.06 KB

Versions: 13

Compression:

Stored size: 1.06 KB

Contents

require "thin"

module Merb

  module Rack

    class Thin < Merb::Rack::AbstractAdapter
      # start a Thin server on given host and port.

      def self.new_server(port)
        Merb::Dispatcher.use_mutex = false
        
        if (@opts[:socket] || @opts[:socket_file])
          socket = port.to_s
          socket_file = @opts[:socket_file] || "#{Merb.log_path}/#{Merb::Config[:name]}.#{socket}.sock"
          Merb.logger.warn!("Using Thin adapter with socket file #{socket_file}.")
          @server = ::Thin::Server.new(socket_file, @opts[:app], @opts)
        else
          Merb.logger.warn!("Using Thin adapter on host #{@opts[:host]} and port #{port}.")
          @opts[:host] = "#{@opts[:host]}-#{port}" if @opts[:host].include?('/')
          @server = ::Thin::Server.new(@opts[:host], port, @opts[:app], @opts)
        end
      end

      def self.start_server
        ::Thin::Logging.silent = true
        @server.start
      end
      
      def self.stop(status = 0)
        if @server
          @server.stop
          true
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 2 rubygems

Version Path
wycats-merb-core-0.9.9 lib/merb-core/rack/adapter/thin.rb
merb-core-1.1.3 spec10/public/webrat/test_app/gems/gems/merb-core-0.9.14/lib/merb-core/rack/adapter/thin.rb
merb-core-1.1.2 spec10/public/webrat/test_app/gems/gems/merb-core-0.9.14/lib/merb-core/rack/adapter/thin.rb
merb-core-1.1.1 spec10/public/webrat/test_app/gems/gems/merb-core-0.9.14/lib/merb-core/rack/adapter/thin.rb
merb-core-1.1.0 spec10/public/webrat/test_app/gems/gems/merb-core-0.9.14/lib/merb-core/rack/adapter/thin.rb
merb-core-1.1.0.rc1 spec10/public/webrat/test_app/gems/gems/merb-core-0.9.14/lib/merb-core/rack/adapter/thin.rb
merb-core-1.1.0.pre spec10/public/webrat/test_app/gems/gems/merb-core-0.9.14/lib/merb-core/rack/adapter/thin.rb
merb-core-0.9.10 lib/merb-core/rack/adapter/thin.rb
merb-core-0.9.11 lib/merb-core/rack/adapter/thin.rb
merb-core-0.9.12 lib/merb-core/rack/adapter/thin.rb
merb-core-0.9.13 lib/merb-core/rack/adapter/thin.rb
merb-core-0.9.9 lib/merb-core/rack/adapter/thin.rb
merb-core-0.9.8 lib/merb-core/rack/adapter/thin.rb