Sha256: b4b6faddda8d7c24b263ee0792b5b0cee89b096865b010d50d3d52ede41bee71

Contents?: true

Size: 577 Bytes

Versions: 7

Compression:

Stored size: 577 Bytes

Contents

module DiscoApp::Concerns::AppUninstalledJob

  extend ActiveSupport::Concern

  included do
    before_enqueue { @shop.awaiting_uninstall! }
    before_perform { @shop.uninstalling! }
    after_perform { @shop.uninstalled! }
  end

  # Perform application uninstallation.
  #
  # - Mark any recurring application charges as cancelled.
  # - Remove any stored sessions for the shop.
  #
  def perform(_shop, _shop_data)
    DiscoApp::ChargesService.cancel_recurring_charges(@shop)
    DiscoApp::SendSubscriptionJob.perform_later(@shop)
    @shop.sessions.delete_all
  end

end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
disco_app-0.17.0 app/jobs/disco_app/concerns/app_uninstalled_job.rb
disco_app-0.18.0 app/jobs/disco_app/concerns/app_uninstalled_job.rb
disco_app-0.18.2 app/jobs/disco_app/concerns/app_uninstalled_job.rb
disco_app-0.18.3 app/jobs/disco_app/concerns/app_uninstalled_job.rb
disco_app-0.18.6 app/jobs/disco_app/concerns/app_uninstalled_job.rb
disco_app-0.18.4 app/jobs/disco_app/concerns/app_uninstalled_job.rb
disco_app-0.18.1 app/jobs/disco_app/concerns/app_uninstalled_job.rb