class ActiveJob::GoogleCloudTasks::HTTP::Rack
Public Instance Methods
call(env)
click to toggle source
# File lib/active_job/google_cloud_tasks/http/rack.rb, line 10 def call(env) request = ::Rack::Request.new(env) payload = extract_payload(request) ActiveJob::Base.execute payload [200, {}, ['ok']] rescue PayloadError => e [400, {}, [e.cause.message]] rescue => e [500, {}, [e.message]] end
Private Instance Methods
extract_payload(request)
click to toggle source
# File lib/active_job/google_cloud_tasks/http/rack.rb, line 25 def extract_payload(request) JSON.parse(request.body.read).fetch('job') rescue JSON::ParserError, KeyError raise PayloadError end