Sha256: 8cdb2adc49d5f74f8cb36450503a877c116ac93e3e480938f21ed820757ffa4a
Contents?: true
Size: 915 Bytes
Versions: 9
Compression:
Stored size: 915 Bytes
Contents
# encoding: utf-8 module ProxyTester class PacResult attr_reader :proxy, :proxy_port, :request_type def initialize(verbatim = '') @verbatim = verbatim if verbatim.blank? parsed_content = {} else parsed_content = parse(verbatim) || {} end @proxy = parsed_content[:proxy] @proxy_port = parsed_content[:proxy_port] @request_type = parsed_content[:request_type] end def verbatim @verbatim.to_s end private def parse(string) regex.match(string) end def regex %r{ \A "? (?<request_type> [A-Z]+ ) (?: \s+ (?<proxy> [0-9]{1,3}(:?\.[0-9]{1,3}){3} || [[:alnum:]]+(?:\.[[:alnum:]]+)*\.? ) (?: : (?<proxy_port>[0-9]+) )? )? ;? "? \Z }x end end end
Version data entries
9 entries across 9 versions & 1 rubygems