Sha256: 0888642da983daa21ee212751fab7d45815330329ac5f60be273001bfd65d2fd

Contents?: true

Size: 498 Bytes

Versions: 2

Compression:

Stored size: 498 Bytes

Contents

class DelayedPaperclipJob < Struct.new(:instance_klass, :instance_id, :attachment_name)
  def perform
    process_job do
      instance.send(attachment_name).reprocess!
      instance.send("#{attachment_name}_processed!")
    end
  end
  
  private
  def instance
    @instance ||= instance_klass.constantize.find(instance_id)
  end
  
  def process_job
    instance.send(attachment_name).job_is_processing = true
    yield
    instance.send(attachment_name).job_is_processing = false    
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
delayed_paperclip-0.6.5 lib/delayed/jobs/delayed_paperclip_job.rb
delayed_paperclip-0.6.4 lib/delayed/jobs/delayed_paperclip_job.rb