Sha256: cdba24cd00cf0d8298ee5fd52e768a350d37609d7f19e83d96161c37706c8bf8
Contents?: true
Size: 1.04 KB
Versions: 2
Compression:
Stored size: 1.04 KB
Contents
module Richard; end dir = File.join(File.dirname(__FILE__)) $LOAD_PATH.unshift File.join(dir, 'richard_iii') Dir.glob(File.join(dir, "richard_iii", "**", "*.rb")).each {|f| require f} module Richard class III def initialize(opts={}) @internet = opts[:internet] || fail("You need to supply :internet") end def exec(text) request_line = request_line_from text reply = @internet.execute( Richard::Request.new( :verb => request_line.verb, :uri => request_line.uri, :headers => headers_from(text), :body => body_from(text) ) ) Internal::CurlFormat.as_string reply end private def request_line_from(text) Richard::Internal::BasicRequestLineParser.from text, headers_from(text) end def headers_from(text) result = {} Internal::BasicHeaderParser.from(text).each{|h| result[h.name] = h.value } result end def body_from(text) Internal::BasicBodyParser.from(text) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
richard_iii-0.1.1 | lib/richard_iii.rb |
richard_iii-0.1.0 | lib/richard_iii.rb |