Class: PupilfirstXapi::Statements::CourseCompleted

Inherits:
Object
  • Object
show all
Defined in:
lib/pupilfirst_xapi/statements/course_completed.rb

Instance Method Summary collapse

Constructor Details

#initialize(repository, uri_for) ⇒ CourseCompleted

Returns a new instance of CourseCompleted.



4
5
6
7
# File 'lib/pupilfirst_xapi/statements/course_completed.rb', line 4

def initialize(repository, uri_for)
  @repository = repository
  @uri_for = uri_for
end

Instance Method Details

#call(actor_id:, resource_id:) ⇒ Object



9
10
11
12
13
14
15
16
17
18
# File 'lib/pupilfirst_xapi/statements/course_completed.rb', line 9

def call(actor_id:, resource_id:)
  actor = @repository.call(:user, actor_id)
  course = @repository.call(:course, resource_id)

  Xapi.create_statement(
    actor: Actors.agent(actor),
    verb: Verbs::COMPLETED,
    object: Objects.course(course, @uri_for)
  )
end