lms-api 1.12.0 → 1.12.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f5efdbf1795911d69e5efb110e65f23fdc4f580f
4
- data.tar.gz: 1c2198e6e1d0a15427683cfcec58791ac85e1d43
3
+ metadata.gz: 4537b1779fc89ca3db4a4e29367b58643ff0a8da
4
+ data.tar.gz: ac3abcb34b218882b427add8e15fc25ee821e404
5
5
  SHA512:
6
- metadata.gz: '0469a565d2d449198a711b46c5e0883aa0d8128d20c09a033b96f3fc7fdd66d3a6a35b6ff5929a58ae81d332730c5d744760ebdbaad147d6a4aab98bfc51b894'
7
- data.tar.gz: 89fb4f0ba9b0097326bae45ab8d9ba92edf87ddbcf35659a24f0e0cc195539d318d46e32346679ea8266762f7534e2471a845abfda9a0e84e88c1915c87c24a3
6
+ metadata.gz: 1ae7e8f29bf07b6055926fec2d61eafcb3e6a42e474e876c58b98167336ce0f1ee42bfe0a9b30bbefad8c3c1c1a160f99592ce3d55c91ee92561c3fe4bab21c4
7
+ data.tar.gz: 742ff6135ad77aeb2dcc391ee095bbbffa23afdf80ffec8d79fe09b966b781725810fdb78ebc8b7f910af8fc0350dd62658bbb1286ad44bf4813f02f15b7f824
@@ -28,6 +28,10 @@ module CanvasApi
28
28
  rb_forward_declarations = []
29
29
 
30
30
  nicknames = []
31
+
32
+ # Elixir has a default action that raises
33
+ lms_urls_ex << CanvasApi::Render.new("./templates/ex_default_action.erb", nil, nil, nil, nil, nil, nil, nil).render
34
+
31
35
  directory["apis"].each do |api|
32
36
  puts "Generating #{api['description']}"
33
37
  resource = HTTParty.get("#{endpoint}#{api['path']}")
@@ -48,6 +52,7 @@ module CanvasApi
48
52
  lms_urls_rb << CanvasApi::Render.new("./templates/rb_url.erb", api, resource, resource_api, operation, parameters, nil, nil).render
49
53
  lms_urls_js << CanvasApi::Render.new("./templates/js_url.erb", api, resource, resource_api, operation, parameters, nil, nil).render
50
54
  lms_urls_ex << CanvasApi::Render.new("./templates/ex_url.erb", api, resource, resource_api, operation, parameters, nil, nil).render
55
+ lms_urls_ex << CanvasApi::Render.new("./templates/ex_action.erb", api, resource, resource_api, operation, parameters, nil, nil).render
51
56
 
52
57
  if parameters.detect{ |param| param["name"] == "course_id" && param["paramType"] == "path" }
53
58
  course_ids_required_rb << CanvasApi::Render.new("./templates/course_id_required.erb", api, resource, resource_api, operation, parameters, nil, nil).render
@@ -94,7 +99,10 @@ module CanvasApi
94
99
 
95
100
  CanvasApi::Render.new("./templates/rb_urls.erb", nil, nil, nil, nil, nil, lms_urls_rb, nil).save("#{project_root}/lib/lms/canvas_urls.rb")
96
101
  CanvasApi::Render.new("./templates/js_urls.erb", nil, nil, nil, nil, nil, lms_urls_js, nil).save("#{server_app_path}/lib/canvas/urls.js")
97
- CanvasApi::Render.new("./templates/ex_urls.erb", nil, nil, nil, nil, nil, lms_urls_ex, nil).save("#{elixir_app_path}/lib/canvas/actions.ex")
102
+
103
+ # The elixir urls are sorted, to prevent linter errors
104
+ CanvasApi::Render.new("./templates/ex_urls.erb", nil, nil, nil, nil, nil, lms_urls_ex.sort, nil).save("#{elixir_app_path}/lib/canvas/actions.ex")
105
+
98
106
  CanvasApi::Render.new("./templates/course_ids_required.erb", nil, nil, nil, nil, nil, course_ids_required_rb, nil).save("#{project_root}/lib/lms/course_ids_required.rb")
99
107
 
100
108
  # GraphQL Javascript - still not complete
@@ -0,0 +1 @@
1
+ def <%=@nickname.downcase%>, do: "<%=@nickname.upcase%>"
@@ -0,0 +1 @@
1
+ def action(type), do: raise InvalidCanvasActionException, message: "Invalid Canvas API Action: #{type}}"
@@ -1,4 +1,3 @@
1
1
  defmodule Canvas.Actions do
2
2
  <%=@content.join("\n ")%>
3
- def action(type), do: raise InvalidCanvasActionException, message: "Invalid Canvas API Action: #{type}}"
4
3
  end
@@ -176,7 +176,11 @@ module LMS
176
176
  url = full_url("login/oauth2/token", false)
177
177
  result = HTTParty.post(url, headers: headers, body: payload)
178
178
  code = result.response.code.to_i
179
- unless [200, 201].include?(code)
179
+ if code >= 500
180
+ raise LMS::Canvas::RefreshToken500Exception.new(api_error(result), code, result, @authentication)
181
+ end
182
+
183
+ if code > 201
180
184
  raise LMS::Canvas::RefreshTokenFailedException.new(api_error(result), code, result, @authentication)
181
185
  end
182
186
  result["access_token"]
@@ -402,6 +406,9 @@ module LMS
402
406
  class RefreshTokenFailedException < TokenException
403
407
  end
404
408
 
409
+ class RefreshToken500Exception < RefreshTokenFailedException
410
+ end
411
+
405
412
  class InvalidRefreshOptionsException < CanvasException
406
413
  end
407
414
 
@@ -178,6 +178,7 @@ module LMS
178
178
  "GET_CURRENT_SETTINGS_FOR_ACCOUNT_OR_COURSE_ACCOUNTS" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings" }, method: "GET", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}] },
179
179
  "ENABLE_DISABLE_OR_CLEAR_EXPLICIT_CSP_SETTING_COURSES" => { uri: ->(course_id:) { "courses/#{course_id}/csp_settings" }, method: "PUT", parameters: [{"paramType"=>"path", "name"=>"course_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"status", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false, "enum"=>["enabled", "disabled", "inherited"]}] },
180
180
  "ENABLE_DISABLE_OR_CLEAR_EXPLICIT_CSP_SETTING_ACCOUNTS" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings" }, method: "PUT", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"status", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false, "enum"=>["enabled", "disabled", "inherited"]}] },
181
+ "LOCK_OR_UNLOCK_CURRENT_CSP_SETTINGS_FOR_SUB_ACCOUNTS_AND_COURSES" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/lock" }, method: "PUT", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"settings_locked", "type"=>"boolean", "format"=>nil, "required"=>true, "deprecated"=>false}] },
181
182
  "ADD_DOMAIN_TO_ACCOUNT_WHITELIST" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/domains" }, method: "POST", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"domain", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}] },
182
183
  "ADD_MULTIPLE_DOMAINS_TO_ACCOUNT_WHITELIST" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/domains/batch_create" }, method: "POST", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"form", "name"=>"domains", "type"=>"Array", "format"=>nil, "required"=>true, "deprecated"=>false}] },
183
184
  "REMOVE_DOMAIN_FROM_ACCOUNT_WHITELIST" => { uri: ->(account_id:) { "accounts/#{account_id}/csp_settings/domains" }, method: "DELETE", parameters: [{"paramType"=>"path", "name"=>"account_id", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}, {"paramType"=>"query", "name"=>"domain", "type"=>"string", "format"=>nil, "required"=>true, "deprecated"=>false}] },
@@ -1,3 +1,3 @@
1
1
  module LMS
2
- VERSION = "1.12.0".freeze
2
+ VERSION = "1.12.1".freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lms-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.12.0
4
+ version: 1.12.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Atomic Jolt
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2019-02-26 00:00:00.000000000 Z
13
+ date: 2019-10-10 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -118,6 +118,8 @@ files:
118
118
  - lib/canvas_api/templates/constants.erb
119
119
  - lib/canvas_api/templates/course_id_required.erb
120
120
  - lib/canvas_api/templates/course_ids_required.erb
121
+ - lib/canvas_api/templates/ex_action.erb
122
+ - lib/canvas_api/templates/ex_default_action.erb
121
123
  - lib/canvas_api/templates/ex_url.erb
122
124
  - lib/canvas_api/templates/ex_urls.erb
123
125
  - lib/canvas_api/templates/js_graphql_model.erb
@@ -167,7 +169,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
167
169
  version: '0'
168
170
  requirements: []
169
171
  rubyforge_project:
170
- rubygems_version: 2.6.11
172
+ rubygems_version: 2.6.14.4
171
173
  signing_key:
172
174
  specification_version: 4
173
175
  summary: Wrapper for the Instructure Canvas API