Sha256: dba5de81307a43b22ef05517f88048146bdc0f4bf553f0937ca187d90884af02

Contents?: true

Size: 656 Bytes

Versions: 1

Compression:

Stored size: 656 Bytes

Contents

# encoding: utf-8
module CarrierWave
  module Workers

    class ProcessAsset < Struct.new(:klass, :id, :column)
      def self.perform(*args)
        new(*args).perform
      end

      def perform
        resource = klass.is_a?(String) ? klass.constantize : klass
        record = resource.find id

        if record
          record.send(:"process_#{column}_upload=", true)
          if record.send(:"#{column}").recreate_versions! && record.respond_to?(:"#{column}_processing")
            record.send :"#{column}_processing=", nil
            record.save!
          end
        end
      end
    end # ProcessAsset

  end # Workers
end # Backgrounder

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
carrierwave_backgrounder-0.1.0 lib/backgrounder/workers/process_asset.rb