Sha256: b0e0650028ade4f1a2212adfc31659820338b4e897846282b6c22350f0e5f2f3

Contents?: true

Size: 1009 Bytes

Versions: 2

Compression:

Stored size: 1009 Bytes

Contents

#delayed_job_monitor.establish_connection

module DelayedJobMonitor
	class Job < ActiveRecord::Base
  	self.table_name = "delayed_jobs"

		def self.queues
			@queues = delayed_job_monitor::Job.select(:queue).map(&:queue).compact.uniq.sort
			return @queues
		end

		def host
			unless DelayedJobMonitor[:database]["host"].blank?
				return DelayedJobMonitor[:database]["host"]
			else
				return "localhost"
			end
		end

		def description
			details = {}
			parsed_handler = self.handler.split(/\n/)
			parsed_handler.map{|x| details[x.split(":")[0].strip.split(/\//).last] = x.split(/\:|\/|\s/).last.strip unless x.blank?}
			target_class = details["ActiveRecord"]
			target_id = details["id"].to_s.gsub(/\W/,"").to_i if details["id"].present?
			performable_class = details["object"] if details["object"].present?
			performable_method = details["method_name"] if details["method_name"].present?
			return "Perform #{performable_class}:#{performable_method} on #{target_class}##{target_id}"
		end
	end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
delayed_job_monitor-0.0.2 lib/delayed_job_monitor/job.rb
delayed_job_monitor-0.0.1 lib/delayed_job_monitor/job.rb