class PupilfirstXapi::Statements::TargetCompleted
Public Class Methods
new(repository, uri_for)
click to toggle source
# File lib/pupilfirst_xapi/statements/target_completed.rb, line 4 def initialize(repository, uri_for) @repository = repository @uri_for = uri_for end
Public Instance Methods
call(actor_id:, resource_id:)
click to toggle source
# File lib/pupilfirst_xapi/statements/target_completed.rb, line 9 def call(actor_id:, resource_id:) submission = @repository.call(:timeline_event, resource_id) return unless submission.passed? actor = @repository.call(:user, actor_id) target = submission.target Xapi.create_statement( actor: Actors.agent(actor), verb: Verbs::COMPLETED_ASSIGNMENT, object: Objects.target(target, @uri_for) ) end