Method: Ferrum::Context#add_target
- Defined in:
- lib/ferrum/context.rb
#add_target(params:, session_id: nil) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/ferrum/context.rb', line 60 def add_target(params:, session_id: nil) new_target = Target.new(@client, session_id, params) # `put_if_absent` returns nil if added a new value or existing if there was one already target = @targets.put_if_absent(new_target.id, new_target) || new_target @default_target ||= target new_pending = Concurrent::IVar.new pending = @pendings.put_if_absent(target.id, new_pending) || new_pending pending.try_set(true) true end |