Sha256: fb3b8ecfc4eda0803c7318b778092e6bbec619816e1b5de1a977b82c1a1fbe21
Contents?: true
Size: 1.86 KB
Versions: 2
Compression:
Stored size: 1.86 KB
Contents
require 'English' module WebTranslateIt class Connection attr_reader :api_key, :http_connection require 'net/http' require 'net/https' require 'openssl' require 'uri' @api_key = nil @http_connection = nil @debug = false # # Initialize and yield a HTTPS Keep-Alive connection to WebTranslateIt.com # # Usage: # # WebTranslateIt::Connection.new(api_key) do # # do something with Connection.api_key and Connection.http_connection # end # # Or: # # WebTranslateIt::Connection.new(api_key) do |http_connection| # http_connection.request(request) # end # def initialize(api_key) # rubocop:todo Metrics/CyclomaticComplexity, Metrics/AbcSize, Metrics/MethodLength @api_key = api_key proxy = ENV['http_proxy'] ? URI.parse(ENV['http_proxy']) : Struct.new(:host, :port, :user, :password).new http = Net::HTTP::Proxy(proxy.host, proxy.port, proxy.user, proxy.password).new('webtranslateit.com', 443) http.use_ssl = true http.open_timeout = http.read_timeout = 60 http.set_debug_output($stderr) if @debug begin http.verify_mode = OpenSSL::SSL::VERIFY_PEER @http_connection = http.start yield @http_connection if block_given? rescue OpenSSL::SSL::SSLError puts 'Unable to verify SSL certificate.' unless @silent http = Net::HTTP::Proxy(proxy.host, proxy.port, proxy.user, proxy.password).new('webtranslateit.com', 443) http.set_debug_output($stderr) if @debug http.use_ssl = true http.open_timeout = http.read_timeout = 60 http.verify_mode = OpenSSL::SSL::VERIFY_NONE @http_connection = http.start yield @http_connection if block_given? rescue puts $ERROR_INFO end end def self.turn_debug_on @debug = true end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
web_translate_it-2.7.0 | lib/web_translate_it/connection.rb |
web_translate_it-2.6.4 | lib/web_translate_it/connection.rb |