Class: CanvasLmsApi::Response
- Inherits:
-
Object
- Object
- CanvasLmsApi::Response
- Defined in:
- lib/canvas_lms_api/response.rb
Constant Summary collapse
- LINK_PATTERN =
%r{^<https?://.*/api/v1/([^>]+)[^"]+"([^"]+)}
Instance Attribute Summary collapse
-
#request ⇒ Object
readonly
Returns the value of attribute request.
-
#rest_response ⇒ Object
readonly
Returns the value of attribute rest_response.
Instance Method Summary collapse
- #body ⇒ Object
-
#initialize(rest_response, request) ⇒ Response
constructor
A new instance of Response.
- #next_page ⇒ Object
Constructor Details
#initialize(rest_response, request) ⇒ Response
Returns a new instance of Response.
9 10 11 12 |
# File 'lib/canvas_lms_api/response.rb', line 9 def initialize(rest_response, request) @rest_response = rest_response @request = request end |
Instance Attribute Details
#request ⇒ Object (readonly)
Returns the value of attribute request.
7 8 9 |
# File 'lib/canvas_lms_api/response.rb', line 7 def request @request end |
#rest_response ⇒ Object (readonly)
Returns the value of attribute rest_response.
7 8 9 |
# File 'lib/canvas_lms_api/response.rb', line 7 def rest_response @rest_response end |
Instance Method Details
#body ⇒ Object
14 15 16 |
# File 'lib/canvas_lms_api/response.rb', line 14 def body @body ||= JSON.parse(rest_response.body) end |
#next_page ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/canvas_lms_api/response.rb', line 18 def next_page @next_page ||= begin return nil unless rest_response.headers[:link] rest_response.headers[:link].split(",").each do |link| link.match(LINK_PATTERN) do |match| url = match[1] rel = match[2] return url if rel == "next" end end # No "next" link found nil end end |