Class: Ferrum::Target
- Inherits:
-
Object
- Object
- Ferrum::Target
- Defined in:
- lib/ferrum/target.rb
Constant Summary collapse
- NEW_WINDOW_WAIT =
ENV.fetch("FERRUM_NEW_WINDOW_WAIT", 0.3).to_f
Instance Attribute Summary collapse
Instance Method Summary collapse
- #attached? ⇒ Boolean
- #context_id ⇒ Object
- #id ⇒ Object
-
#initialize(browser, params = nil) ⇒ Target
constructor
A new instance of Target.
- #maybe_sleep_if_new_window ⇒ Object
- #opener_id ⇒ Object
- #title ⇒ Object
- #type ⇒ Object
- #update(params) ⇒ Object
- #url ⇒ Object
- #window? ⇒ Boolean
Constructor Details
#initialize(browser, params = nil) ⇒ Target
Returns a new instance of Target.
11 12 13 14 |
# File 'lib/ferrum/target.rb', line 11 def initialize(browser, params = nil) @browser = browser @params = params end |
Instance Attribute Details
Instance Method Details
#attached? ⇒ Boolean
20 21 22 |
# File 'lib/ferrum/target.rb', line 20 def attached? !!@page end |
#context_id ⇒ Object
51 52 53 |
# File 'lib/ferrum/target.rb', line 51 def context_id @params["browserContextId"] end |
#id ⇒ Object
31 32 33 |
# File 'lib/ferrum/target.rb', line 31 def id @params["targetId"] end |
#maybe_sleep_if_new_window ⇒ Object
59 60 61 62 |
# File 'lib/ferrum/target.rb', line 59 def maybe_sleep_if_new_window # Dirty hack because new window doesn't have events at all sleep(NEW_WINDOW_WAIT) if window? end |
#opener_id ⇒ Object
47 48 49 |
# File 'lib/ferrum/target.rb', line 47 def opener_id @params["openerId"] end |
#title ⇒ Object
39 40 41 |
# File 'lib/ferrum/target.rb', line 39 def title @params["title"] end |
#type ⇒ Object
35 36 37 |
# File 'lib/ferrum/target.rb', line 35 def type @params["type"] end |
#update(params) ⇒ Object
16 17 18 |
# File 'lib/ferrum/target.rb', line 16 def update(params) @params = params end |
#url ⇒ Object
43 44 45 |
# File 'lib/ferrum/target.rb', line 43 def url @params["url"] end |
#window? ⇒ Boolean
55 56 57 |
# File 'lib/ferrum/target.rb', line 55 def window? !!opener_id end |