class SlowServer::ClientConfig

Attributes

host[RW]
request_headers[RW]
request_method[RW]
request_uri[RW]

Public Class Methods

new() click to toggle source
Calls superclass method SlowServer::Config::new
# File lib/slow_server/config.rb, line 49
def initialize
  super
  self.request_method = 'GET'
  self.host = 'localhost'
  self.request_uri = "/"
  self.request_headers = []
end

Public Instance Methods

opts() click to toggle source
Calls superclass method SlowServer::Config#opts
# File lib/slow_server/config.rb, line 57
def opts
  opts = super
  opts.banner = "Usage: #{File.basename($PROGRAM_NAME)} [OPTIONS] [URI]"
  opts.on_head("-p", "--port NUMBER",            Integer, "Listen Port                         (default: #{self.port})")           { |v| @port_override = v }
  opts.on_head("-X", "--method METHOD",          String,  "Request Method                      (default: #{self.request_method})") { |v| self.request_method = v }
end
parse() click to toggle source
# File lib/slow_server/config.rb, line 64
def parse
  uri = URI.parse(args[0])
  if !uri.respond_to?(:request_uri) && uri !~ %r{^\w+:\/\/}
    uri = URI.parse("http://#{uri}")
  end
  self.host = uri.host
  self.port = @port_override || uri.port
  self.request_uri = uri.request_uri if uri.request_uri
end