Class: Spree::Webhooks::Subscribers::MakeRequest

Inherits:
Object
  • Object
show all
Defined in:
app/services/spree/webhooks/subscribers/make_request.rb

Instance Method Summary collapse

Constructor Details

#initialize(signature:, url:, webhook_payload_body:) ⇒ MakeRequest

Returns a new instance of MakeRequest.



7
8
9
10
11
12
13
# File 'app/services/spree/webhooks/subscribers/make_request.rb', line 7

def initialize(signature:, url:, webhook_payload_body:)
  @execution_time_in_milliseconds = 0
  @signature = signature
  @url = url
  @webhook_payload_body = webhook_payload_body
  @webhooks_timeout = ENV['SPREE_WEBHOOKS_TIMEOUT']
end

Instance Method Details

#execution_timeObject



15
16
17
18
# File 'app/services/spree/webhooks/subscribers/make_request.rb', line 15

def execution_time
  request
  @execution_time_in_milliseconds
end

#failed_request?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'app/services/spree/webhooks/subscribers/make_request.rb', line 20

def failed_request?
  (200...300).exclude?(response_code)
end

#response_codeObject



24
25
26
# File 'app/services/spree/webhooks/subscribers/make_request.rb', line 24

def response_code
  request.code.to_i
end

#success?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'app/services/spree/webhooks/subscribers/make_request.rb', line 28

def success?
  !unprocessable_uri? && !failed_request?
end

#unprocessable_uri?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'app/services/spree/webhooks/subscribers/make_request.rb', line 32

def unprocessable_uri?
  uri_path == '' && uri_host.nil? && uri_port.nil?
end