Class: Ferrum::Network::Exchange

Inherits:
Object
  • Object
show all
Defined in:
lib/ferrum/network/exchange.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ Exchange

Returns a new instance of Exchange.



12
13
14
15
# File 'lib/ferrum/network/exchange.rb', line 12

def initialize(params)
  @response = @error = nil
  build_request(params)
end

Instance Attribute Details

#errorObject (readonly)

Returns the value of attribute error.



10
11
12
# File 'lib/ferrum/network/exchange.rb', line 10

def error
  @error
end

#requestObject (readonly)

Returns the value of attribute request.



10
11
12
# File 'lib/ferrum/network/exchange.rb', line 10

def request
  @request
end

#responseObject (readonly)

Returns the value of attribute response.



10
11
12
# File 'lib/ferrum/network/exchange.rb', line 10

def response
  @response
end

Instance Method Details

#blocked?Boolean

Returns:

  • (Boolean)


34
35
36
# File 'lib/ferrum/network/exchange.rb', line 34

def blocked?
  response.nil?
end

#build_error(params) ⇒ Object



25
26
27
# File 'lib/ferrum/network/exchange.rb', line 25

def build_error(params)
  @error = Network::Error.new(params)
end

#build_request(params) ⇒ Object



17
18
19
# File 'lib/ferrum/network/exchange.rb', line 17

def build_request(params)
  @request = Network::Request.new(params)
end

#build_response(params) ⇒ Object



21
22
23
# File 'lib/ferrum/network/exchange.rb', line 21

def build_response(params)
  @response = Network::Response.new(params)
end

Returns:

  • (Boolean)


29
30
31
32
# File 'lib/ferrum/network/exchange.rb', line 29

def navigation_request?(frame_id)
  request.type?(:document) &&
    request.frame_id == frame_id
end

#to_aObject



38
39
40
# File 'lib/ferrum/network/exchange.rb', line 38

def to_a
  [request, response, error]
end