Sha256: a0452a7f973c716d1e81624914ac3d5e913c11fa22bbabf685721a8d2ee6355c

Contents?: true

Size: 1.03 KB

Versions: 78

Compression:

Stored size: 1.03 KB

Contents

# frozen_string_literal: true
#
# prochandler.rb -- ProcHandler Class
#
# Author: IPR -- Internet Programming with Ruby -- writers
# Copyright (c) 2001 TAKAHASHI Masayoshi, GOTOU Yuuzou
# Copyright (c) 2002 Internet Programming with Ruby writers. All rights
# reserved.
#
# $IPR: prochandler.rb,v 1.7 2002/09/21 12:23:42 gotoyuzo Exp $

require_relative 'abstract'

module WEBrick
  module HTTPServlet

    ##
    # Mounts a proc at a path that accepts a request and response.
    #
    # Instead of mounting this servlet with WEBrick::HTTPServer#mount use
    # WEBrick::HTTPServer#mount_proc:
    #
    #   server.mount_proc '/' do |req, res|
    #     res.body = 'it worked!'
    #     res.status = 200
    #   end

    class ProcHandler < AbstractServlet
      # :stopdoc:
      def get_instance(server, *options)
        self
      end

      def initialize(proc)
        @proc = proc
      end

      def do_GET(request, response)
        @proc.call(request, response)
      end

      alias do_POST do_GET
      # :startdoc:
    end

  end
end

Version data entries

78 entries across 78 versions & 1 rubygems

Version Path
shopify-cli-2.36.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.35.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.34.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.33.1 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.33.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.32.1 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.32.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.31.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.30.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.29.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.28.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.27.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.26.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.25.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.24.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.23.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.22.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.21.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.20.1 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb
shopify-cli-2.20.0 vendor/deps/webrick/lib/webrick/httpservlet/prochandler.rb