Class: PandaPal::Jobs::GradePassbackJob

Inherits:
ActiveJob::Base
  • Object
show all
Defined in:
app/jobs/panda_pal/jobs/grade_passback_job.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#optsObject

Returns the value of attribute opts.



7
8
9
# File 'app/jobs/panda_pal/jobs/grade_passback_job.rb', line 7

def opts
  @opts
end

#organizationObject

Returns the value of attribute organization.



7
8
9
# File 'app/jobs/panda_pal/jobs/grade_passback_job.rb', line 7

def organization
  @organization
end

Instance Method Details

#perform(organization, opts = {}) ⇒ Object

Required values for opts: passback_guid, passback_url, score AND/OR total_score. Possible values for opts: cdata_text, text, url, submitted_at, lti_launch_url. passback_guid is sent in launch params as ‘lis_result_sourcedid’. passback_url is sent in LTI launch params as ‘lis_outcome_service_url’. See canvas.instructure.com/doc/api/file.assignment_tools.html



16
17
18
19
20
21
22
23
24
# File 'app/jobs/panda_pal/jobs/grade_passback_job.rb', line 16

def perform(organization, opts = {})
  opts = opts.with_indifferent_access
  raise MissingGradePassbackParams unless valid_options(opts)

  @organization = organization
  @opts = opts

  post_to_lms
end