Sha256: 344646ca876dbb23f01a1cb65c50e3823836bd4a8d8b147a68212a7a581aa3e9

Contents?: true

Size: 1.47 KB

Versions: 1

Compression:

Stored size: 1.47 KB

Contents

require "queue_classic"
require "queue_classic/later"
require "active_record"
require "with_advisory_lock"
require "active_support/core_ext/class/attribute"

require "queue_classic_plus/version"
require "queue_classic_plus/metrics"
require "queue_classic_plus/update_metrics"
require "queue_classic_plus/base"
require "queue_classic_plus/worker"

module QueueClassicPlus
  require 'queue_classic_plus/railtie' if defined?(Rails)

  def self.migrate(c = QC::default_conn_adapter.connection)
    conn = QC::ConnAdapter.new(c)
    conn.execute("ALTER TABLE queue_classic_jobs ADD COLUMN last_error TEXT")
    conn.execute("ALTER TABLE queue_classic_jobs ADD COLUMN remaining_retries INTEGER")
    conn.execute("ALTER TABLE queue_classic_later_jobs ADD COLUMN remaining_retries INTEGER")
  end

  def self.demigrate(c = QC::default_conn_adapter.connection)
    conn = QC::ConnAdapter.new(c)
    conn.execute("ALTER TABLE queue_classic_jobs DROP COLUMN last_error")
    conn.execute("ALTER TABLE queue_classic_jobs DROP COLUMN remaining_retries")
    conn.execute("ALTER TABLE queue_classic_later_jobs DROP COLUMN remaining_retries")
  end

  def self.exception_handler
    @exception_handler ||= -> (exception, job) { nil }
  end

  def self.exception_handler=(handler)
    @exception_handler = handler
  end

  def self.update_metrics
    UpdateMetrics.update
  end

  def self.logger
    @logger ||= defined?(Rails) ? Rails.logger : Logger.new(STDOUT)
  end

  def self.logger=(l)
    @logger = l
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
queue_classic_plus-0.0.2 lib/queue_classic_plus.rb