Sha256: eb21c322a821bc2c9e29012ca1cf8c408cd7d9e2402f62d29776b92be17e839e

Contents?: true

Size: 612 Bytes

Versions: 28

Compression:

Stored size: 612 Bytes

Contents

module Workarea
  class IndexProduct
    include Sidekiq::Worker
    include Sidekiq::CallbacksWorker

    sidekiq_options(
      enqueue_on: { Catalog::Product => [:save, :save_release_changes, :destroy] },
      lock: :until_executing,
      query_cache: true
    )

    class << self
      def perform(product)
        BulkIndexProducts.perform_by_model(product)
      end
    end

    def perform(id)
      self.class.perform(Catalog::Product.find(id))
    rescue Mongoid::Errors::DocumentNotFound
      Search::Storefront::Product.new(
        Catalog::Product.new(id: id)
      ).destroy
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
workarea-core-3.5.27 app/workers/workarea/index_product.rb
workarea-core-3.5.26 app/workers/workarea/index_product.rb
workarea-core-3.5.25 app/workers/workarea/index_product.rb
workarea-core-3.5.23 app/workers/workarea/index_product.rb
workarea-core-3.5.22 app/workers/workarea/index_product.rb
workarea-core-3.5.21 app/workers/workarea/index_product.rb
workarea-core-3.5.20 app/workers/workarea/index_product.rb
workarea-core-3.5.19 app/workers/workarea/index_product.rb
workarea-core-3.5.18 app/workers/workarea/index_product.rb
workarea-core-3.5.17 app/workers/workarea/index_product.rb
workarea-core-3.5.16 app/workers/workarea/index_product.rb
workarea-core-3.5.15 app/workers/workarea/index_product.rb
workarea-core-3.5.14 app/workers/workarea/index_product.rb
workarea-core-3.5.13 app/workers/workarea/index_product.rb
workarea-core-3.5.12 app/workers/workarea/index_product.rb
workarea-core-3.5.11 app/workers/workarea/index_product.rb
workarea-core-3.5.10 app/workers/workarea/index_product.rb
workarea-core-3.5.9 app/workers/workarea/index_product.rb
workarea-core-3.5.8 app/workers/workarea/index_product.rb
workarea-core-3.5.7 app/workers/workarea/index_product.rb