Class: ProxyFetcher::Client::ProxiesRegistry
- Inherits:
-
Object
- Object
- ProxyFetcher::Client::ProxiesRegistry
- Defined in:
- lib/proxy_fetcher/client/proxies_registry.rb
Class Method Summary collapse
Class Method Details
.find_proxy_for(url) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/proxy_fetcher/client/proxies_registry.rb', line 10 def find_proxy_for(url) proxy = if URI.parse(url).is_a?(URI::HTTPS) manager.proxies.detect(&:ssl?) else manager.get end return proxy unless proxy.nil? manager.refresh_list! find_proxy_for(url) end |
.invalidate_proxy!(proxy) ⇒ Object
5 6 7 8 |
# File 'lib/proxy_fetcher/client/proxies_registry.rb', line 5 def invalidate_proxy!(proxy) manager.proxies.delete(proxy) manager.refresh_list! if manager.proxies.empty? end |
.manager ⇒ Object
23 24 25 26 27 28 |
# File 'lib/proxy_fetcher/client/proxies_registry.rb', line 23 def manager manager = Thread.current[:proxy_fetcher_manager] return manager unless manager.nil? Thread.current[:proxy_fetcher_manager] = ProxyFetcher::Manager.new end |