Class: Spree::WebhookDeliveryJob

Inherits:
BaseJob
  • Object
show all
Defined in:
app/jobs/spree/webhook_delivery_job.rb

Instance Method Summary collapse

Instance Method Details

#perform(delivery_id, _deprecated_secret_key = nil, payload_secrets: nil) ⇒ Object

Accept optional second argument for backward compatibility with jobs enqueued before this change was deployed.

payload_secrets carries credentials withheld from the persisted payload so the outgoing request body stays complete. See Spree::WebhookPayloadRedaction.



20
21
22
23
24
25
26
27
# File 'app/jobs/spree/webhook_delivery_job.rb', line 20

def perform(delivery_id, _deprecated_secret_key = nil, payload_secrets: nil)
  delivery = Spree::WebhookDelivery.find_by(id: delivery_id)
  return if delivery.nil?

  delivery.payload_secrets = payload_secrets
  secret_key = delivery.webhook_endpoint.secret_key
  Spree::Webhooks::DeliverWebhook.call(delivery: delivery, secret_key: secret_key)
end