class Coursera::Base

Public Class Methods

batch_request(route, attrs = {}) click to toggle source
# File lib/coursera/base.rb, line 24
def self.batch_request(route, attrs = {})
  request = self.get_elements(route, {query: attrs})
  results = []
  (request ||= []).each { |obj| results << new(obj) }
  results
end
get_elements(route, attrs = {}) click to toggle source
# File lib/coursera/base.rb, line 31
def self.get_elements(route, attrs = {})
  self.get(route, attrs)["elements"]
rescue
  nil
end
new(json) click to toggle source
# File lib/coursera/base.rb, line 9
def initialize(json)
  @parsed = json.is_a?(Hash) ? json : JSON.parse(json)

  @parsed.each do |k, v|
    define_singleton_method(k) { v }
  end
end
prepare_attributes(attrs) click to toggle source
# File lib/coursera/base.rb, line 17
def self.prepare_attributes(attrs)
  attrs.each do |key, value|
    attrs[key] = attrs[key].map(&:to_s).join(",") if attrs[key].kind_of?(Array)
  end
  attrs
end