Sha256: 4bf2e3a96a09fc67907076b148cb1ff6c9444fb4ecbe4c5e12d09c49fd0cd0b9
Contents?: true
Size: 1.29 KB
Versions: 3
Compression:
Stored size: 1.29 KB
Contents
require "net/http" module Auger class Project def http(port = 80, &block) @connections << Http.load(port, &block) end def https(port = 443, &block) http = Http.load(port, &block) http.ssl(true) @connections << http end end class Http < Auger::Connection def get(url, &block) @url = url @requests << Auger::HttpRequest.load(url, &block) end def open(host, options) http = Net::HTTP.new(host, options[:port]) http.use_ssl = options[:ssl] http.verify_mode = OpenSSL::SSL::VERIFY_NONE if options[:insecure] http.open_timeout = options[:timeout] http.read_timeout = options[:timeout] http.start http end def close(http) http.finish end end class HttpRequest < Auger::Request attr_accessor :headers, :user, :password def initialize(url) @headers = {} super end def header(h) key, value = h.split /\s*:\s*/ @headers[key] = value end def user(user) @user = user end def password(password) @password = password end def run(http) get = Net::HTTP::Get.new(@arg) get.basic_auth(@user, @password||'') if @user @headers.each { |k,v| get[k] = v } http.request(get) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
auger-1.3.1 | lib/plugins/http.rb |
auger-1.3.0 | lib/plugins/http.rb |
auger-1.2.4 | lib/plugins/http.rb |