class Proxied::Utilities
Public Class Methods
encode_credential(credential)
click to toggle source
# File lib/proxied/utilities.rb, line 18 def encode_credential(credential) CGI::escape(credential) end
format_proxy_address(host:, port: 80, username: nil, password: nil, protocol: 'http', include_protocol: false)
click to toggle source
# File lib/proxied/utilities.rb, line 5 def format_proxy_address(host:, port: 80, username: nil, password: nil, protocol: 'http', include_protocol: false) protocol ||= 'http' address = "#{host.strip}:#{port}" address = "#{format_proxy_credentials(username, password)}@#{address}" if !username.to_s.empty? && !password.to_s.empty? address = include_protocol && address !~ /^http(s)?/i ? "#{protocol}://#{address}" : address return address end
format_proxy_credentials(username, password)
click to toggle source
# File lib/proxied/utilities.rb, line 14 def format_proxy_credentials(username, password) return "#{encode_credential(username)}:#{encode_credential(password)}" end
proxy_options_for_faraday(host:, port: 80, username: nil, password: nil, auth_mode: :credentials, protocol: 'http')
click to toggle source
# File lib/proxied/utilities.rb, line 31 def proxy_options_for_faraday(host:, port: 80, username: nil, password: nil, auth_mode: :credentials, protocol: 'http') proxy_options = {} username = encode_credential(username) password = encode_credential(password) options = {host: host, port: port, protocol: protocol, include_protocol: true} options[:username] = username if !username.to_s.empty? && auth_mode&.to_sym&.eql?(:url) options[:password] = password if !password.to_s.empty? && auth_mode&.to_sym&.eql?(:url) proxy_options[:uri] = format_proxy_address(options) proxy_options[:user] = username if !username.to_s.empty? && auth_mode&.to_sym&.eql?(:credentials) proxy_options[:password] = password if !password.to_s.empty? && auth_mode&.to_sym&.eql?(:credentials) return proxy_options end
socks_proxy_credentials(username: nil, password: nil)
click to toggle source
# File lib/proxied/utilities.rb, line 22 def socks_proxy_credentials(username: nil, password: nil) credentials = {} credentials[:user] = username if !username.to_s.empty? credentials[:password] = password if !password.to_s.empty? return credentials end