Class: PCR::Review

Inherits:
Object
  • Object
show all
Includes:
Resource
Defined in:
lib/classes/review.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Resource

#set_attrs

Constructor Details

#initialize(path) ⇒ Review

Returns a new instance of Review.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/classes/review.rb', line 9

def initialize(path)
  @path = path

  # Hit api
  json = PCR.get_json(path)

  # Assign attrs
  attrs = %w(instructor num_reviewers num_students amount_learned comments
            retrieved id)
  set_attrs(attrs, json)

  # Assign ratings
  json['result']['ratings'].each do |name, val|
    self.instance_variable_set("@#{name}", val)
    self.class.send(:attr_accessor, name)
  end
end

Instance Attribute Details

#commentsObject (readonly)

Returns the value of attribute comments.



6
7
8
# File 'lib/classes/review.rb', line 6

def comments
  @comments
end

#idObject (readonly)

Returns the value of attribute id.



6
7
8
# File 'lib/classes/review.rb', line 6

def id
  @id
end

#instructorObject (readonly)

Returns the value of attribute instructor.



6
7
8
# File 'lib/classes/review.rb', line 6

def instructor
  @instructor
end

#num_reviewersObject (readonly)

Returns the value of attribute num_reviewers.



6
7
8
# File 'lib/classes/review.rb', line 6

def num_reviewers
  @num_reviewers
end

#num_studentsObject (readonly)

Returns the value of attribute num_students.



6
7
8
# File 'lib/classes/review.rb', line 6

def num_students
  @num_students
end

#retrievedObject (readonly)

Returns the value of attribute retrieved.



6
7
8
# File 'lib/classes/review.rb', line 6

def retrieved
  @retrieved
end