Class: Crabfarm::Adapters::Browser::AbstractWebdriver

Inherits:
Base
  • Object
show all
Defined in:
lib/crabfarm/adapters/browser/abstract_webdriver.rb

Direct Known Subclasses

Chrome, Firefox, PhantomJs, RemoteWebdriver

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#cleanup_driver_services, #headless?, #prepare_driver_services

Constructor Details

#initialize(_proxy = nil) ⇒ AbstractWebdriver

Returns a new instance of AbstractWebdriver.



10
11
12
13
# File 'lib/crabfarm/adapters/browser/abstract_webdriver.rb', line 10

def initialize(_proxy=nil)
  @config = load_driver_config
  @config[:proxy] = _proxy
end

Instance Attribute Details

#configObject

Returns the value of attribute config.



8
9
10
# File 'lib/crabfarm/adapters/browser/abstract_webdriver.rb', line 8

def config
  @config
end

Instance Method Details

#build_driver(_session_id) ⇒ Object



15
16
17
# File 'lib/crabfarm/adapters/browser/abstract_webdriver.rb', line 15

def build_driver(_session_id)
  wrap_driver build_webdriver_instance
end

#extract_webdriver(_wrapped) ⇒ Object



23
24
25
# File 'lib/crabfarm/adapters/browser/abstract_webdriver.rb', line 23

def extract_webdriver(_wrapped)
  _wrapped.driver
end

#release_driver(_wrapped) ⇒ Object



27
28
29
# File 'lib/crabfarm/adapters/browser/abstract_webdriver.rb', line 27

def release_driver(_wrapped)
  _wrapped.driver.quit rescue nil
end

#reset_driver(_wrapped) ⇒ Object



19
20
21
# File 'lib/crabfarm/adapters/browser/abstract_webdriver.rb', line 19

def reset_driver(_wrapped)
  _wrapped.driver.manage.delete_all_cookies # pincers exposes driver?
end