class OrderUp::Resque::JsonJob
Public Class Methods
deserialize(job_data)
click to toggle source
# File lib/order_up/resque.rb, line 29 def self.deserialize(job_data) data = JSON.parse(job_data) class_name = data.delete(ENCAPSULATED_CLASS) class_name.constantize.allocate.tap do |obj| data.each do |key, value| obj.instance_variable_set(:"@#{key}", value) end end end
perform(job_data)
click to toggle source
# File lib/order_up/resque.rb, line 22 def self.perform(job_data) deserialize(job_data).run end
serialize(job)
click to toggle source
# File lib/order_up/resque.rb, line 25 def self.serialize(job) job.as_json.merge(ENCAPSULATED_CLASS => job.class.name).to_json end