absorb_api 0.2.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +866 -0
  3. data/.ruby-version +1 -0
  4. data/CODE_OF_CONDUCT.md +46 -0
  5. data/Gemfile +3 -10
  6. data/README.md +0 -2
  7. data/Rakefile +3 -1
  8. data/absorb_api.gemspec +30 -16
  9. data/bin/console +11 -5
  10. data/doc/AbsorbApi.html +33 -64
  11. data/doc/AbsorbApi/Api.html +358 -0
  12. data/doc/AbsorbApi/Authorize.html +263 -0
  13. data/doc/AbsorbApi/Category.html +3 -2
  14. data/doc/AbsorbApi/Certificate.html +3 -2
  15. data/doc/AbsorbApi/Chapter.html +3 -2
  16. data/doc/AbsorbApi/Collection.html +3 -2
  17. data/doc/AbsorbApi/Configuration.html +3 -28
  18. data/doc/AbsorbApi/Course.html +3 -71
  19. data/doc/AbsorbApi/CourseEnrollment.html +6 -58
  20. data/doc/AbsorbApi/Create.html +164 -0
  21. data/doc/AbsorbApi/Curriculum.html +3 -2
  22. data/doc/AbsorbApi/Department.html +4 -14
  23. data/doc/AbsorbApi/Lesson.html +3 -2
  24. data/doc/AbsorbApi/LessonEnrollment.html +3 -2
  25. data/doc/AbsorbApi/Prerequisite.html +3 -2
  26. data/doc/AbsorbApi/Record.html +360 -0
  27. data/doc/AbsorbApi/Relations.html +2 -196
  28. data/doc/AbsorbApi/Relations/ClassMethods.html +197 -0
  29. data/doc/AbsorbApi/Resource.html +3 -2
  30. data/doc/AbsorbApi/ResourceNotFound.html +2 -1
  31. data/doc/AbsorbApi/Role.html +3 -2
  32. data/doc/AbsorbApi/RouteNotFound.html +2 -1
  33. data/doc/AbsorbApi/SessionSchedule.html +3 -2
  34. data/doc/AbsorbApi/Tag.html +4 -14
  35. data/doc/AbsorbApi/User.html +85 -35
  36. data/doc/AbsorbApi/ValidationError.html +2 -1
  37. data/doc/AbsorbApi/Where.html +162 -0
  38. data/doc/CODE_OF_CONDUCT_md.html +196 -0
  39. data/doc/Gemfile.html +8 -8
  40. data/doc/Gemfile_lock.html +57 -29
  41. data/doc/Icon/r.html +96 -0
  42. data/doc/LICENSE_txt.html +6 -1
  43. data/doc/Object.html +159 -0
  44. data/doc/README_md.html +6 -3
  45. data/doc/Rakefile.html +7 -2
  46. data/doc/absorb_api_gemspec.html +24 -7
  47. data/doc/bin/setup.html +6 -1
  48. data/doc/created.rid +34 -30
  49. data/doc/css/fonts.css +6 -6
  50. data/doc/index.html +19 -4
  51. data/doc/js/darkfish.js +7 -7
  52. data/doc/js/search_index.js +1 -1
  53. data/doc/js/search_index.js.gz +0 -0
  54. data/doc/js/searcher.js +1 -0
  55. data/doc/js/searcher.js.gz +0 -0
  56. data/doc/table_of_contents.html +118 -31
  57. data/lib/absorb_api.rb +43 -29
  58. data/lib/absorb_api/api.rb +69 -5
  59. data/lib/absorb_api/authorize.rb +37 -7
  60. data/lib/absorb_api/category.rb +3 -1
  61. data/lib/absorb_api/certificate.rb +5 -2
  62. data/lib/absorb_api/chapter.rb +3 -1
  63. data/lib/absorb_api/collection.rb +2 -19
  64. data/lib/absorb_api/configuration.rb +14 -12
  65. data/lib/absorb_api/course.rb +11 -25
  66. data/lib/absorb_api/course_enrollment.rb +13 -26
  67. data/lib/absorb_api/create.rb +19 -0
  68. data/lib/absorb_api/curriculum.rb +11 -2
  69. data/lib/absorb_api/department.rb +10 -4
  70. data/lib/absorb_api/lesson.rb +5 -2
  71. data/lib/absorb_api/lesson_enrollment.rb +8 -2
  72. data/lib/absorb_api/prerequisite.rb +5 -2
  73. data/lib/absorb_api/record.rb +58 -0
  74. data/lib/absorb_api/relations.rb +42 -40
  75. data/lib/absorb_api/resource.rb +3 -1
  76. data/lib/absorb_api/role.rb +3 -1
  77. data/lib/absorb_api/session_schedule.rb +6 -2
  78. data/lib/absorb_api/tag.rb +6 -3
  79. data/lib/absorb_api/user.rb +13 -29
  80. data/lib/absorb_api/version.rb +3 -1
  81. data/lib/absorb_api/where.rb +17 -0
  82. metadata +133 -8
  83. data/lib/absorb_api/base.rb +0 -12
  84. data/lib/absorb_api/orm.rb +0 -36
@@ -1,12 +0,0 @@
1
- module AbsorbApi
2
- class Base
3
- include Orm
4
-
5
- def initialize(attributes = [], &block)
6
- attributes.each do |k,v|
7
- instance_variable_set("@#{k.to_s.underscore}", v) unless v.nil?
8
- end
9
- yield self if block_given?
10
- end
11
- end
12
- end
@@ -1,36 +0,0 @@
1
- module AbsorbApi
2
- class ResourceNotFound < StandardError; end
3
- class RouteNotFound < StandardError; end
4
- class ValidationError < StandardError; end
5
-
6
- module Orm
7
- extend ActiveSupport::Concern
8
-
9
- class_methods do
10
- def find(id)
11
- raise ResourceNotFound if id.blank?
12
- response = AbsorbApi::Api.new.connection.get("#{to_s.demodulize.pluralize}/#{id}")
13
- if response.status == 404
14
- raise(RouteNotFound)
15
- elsif response.status == 400
16
- raise ResourceNotFound
17
- else
18
- new(response.body)
19
- end
20
- end
21
-
22
- def all
23
- response = AbsorbApi::Api.new.connection.get(to_s.demodulize.pluralize)
24
- if response.status == 404
25
- raise RouteNotFound
26
- elsif response.status == 400
27
- raise ResourceNotFound
28
- else
29
- Collection.new(response.body.map! do |attributes|
30
- new(attributes)
31
- end, klass: to_s.demodulize)
32
- end
33
- end
34
- end
35
- end
36
- end