Class: Solrengine::Sdp::BurnJob

Inherits:
ActiveJob::Base
  • Object
show all
Defined in:
app/jobs/solrengine/sdp/burn_job.rb

Overview

Sends a single burn to SDP, off the web request. The burn POST is NEVER retried; the atomic claim (burning → in_flight) guarantees a burn is never sent twice. Counterpart to MintJob — see it for the full rationale.

Instance Method Summary collapse

Instance Method Details

#perform(burn) ⇒ Object



13
14
15
16
17
18
19
20
# File 'app/jobs/solrengine/sdp/burn_job.rb', line 13

def perform(burn)
  return unless burn.claim! # false → already attempted; never re-send

  burn.submit_to_sdp!
  # See MintJob: the burn is its own doorbell, so ring the source
  # wallet's balance broadcast directly when the burn settles.
  broadcast_balance(burn.source) if burn.burned?
end