kosapi_client 0.7.1 → 0.8.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: '09f3155fa5b3db5339871a34bcb01715b79c0f50'
4
- data.tar.gz: f125e9b672e550555bb2087374162930259a6896
3
+ metadata.gz: 2cbd06f389e0118e1f7c3e9366af9638ee643bbf
4
+ data.tar.gz: b4c7f3e7680653e4920a2c30876107c2dbf1ce2c
5
5
  SHA512:
6
- metadata.gz: acc8abb497c8016cf7f7b8bb3299873eeb4686ebce491c0f102491d921f275d43cc55f93464ff4324cddd885b9d8fbadcb6131519f165ca663340c9a4daeadbd
7
- data.tar.gz: d605ad4b32ebd0e524f3086c8a392a8fc984d5f00b08091381c1c027d49a7af076548dab47308fa0f2e1f108c92cc19e4493da34104931ae571a858a96329c57
6
+ metadata.gz: dee4adbe8a2bdd0f8a975aaeb7797cdf61cc0230540b66666f8e30bf973b64d9ce919ab3d030981f45b8ce67fc5e590dd6252cdd24c74b44c7de36ba1f0c4d8b
7
+ data.tar.gz: 8f327d32b45559da7156b0ca039fffbb73e64bb77e366f59574d9fe8cdcc8ce7a8e748f12e25f1004e83d62fb0c50438e81b5ff66fc098a94a5f3ea34fcd6c53
@@ -10,6 +10,7 @@ module KOSapiClient
10
10
  resource :course_events
11
11
  resource :divisions
12
12
  resource :parallels
13
+ resource :parameters
13
14
  resource :exams
14
15
  resource :semesters
15
16
  resource :teachers
@@ -14,6 +14,7 @@ require 'kosapi_client/entity/division'
14
14
  require 'kosapi_client/entity/teacher_timetable_slot'
15
15
  require 'kosapi_client/entity/timetable_slot'
16
16
  require 'kosapi_client/entity/parallel'
17
+ require 'kosapi_client/entity/parameter'
17
18
  require 'kosapi_client/entity/base_person'
18
19
  require 'kosapi_client/entity/person'
19
20
  require 'kosapi_client/entity/teacher'
@@ -0,0 +1,14 @@
1
+ module KOSapiClient
2
+ module Entity
3
+ class Parameter < BaseEntity
4
+
5
+ map_data :description, String
6
+ map_data :key, String
7
+ map_data :value, String
8
+ end
9
+
10
+ # XSI type of the Parameter entity is actually KoSetting (wtf?), thus we
11
+ # must define this alias so ResponseConverter can find the entity class.
12
+ KoSetting = Parameter
13
+ end
14
+ end
@@ -32,6 +32,26 @@ module KOSapiClient
32
32
 
33
33
  alias where query
34
34
 
35
+ # Specify order of the results.
36
+ #
37
+ # Examples:
38
+ # .order_by(:firstName, :lastName)
39
+ # .order_by(:firstName, lastName: :desc)
40
+ # .order_by(firstName: :asc, lastName: desc)
41
+ def order_by(*args, **kwargs)
42
+ ordering = args + kwargs.map do |attr, dir|
43
+ if dir != :asc && dir != :desc
44
+ raise ArgumentError, "Direction must be :asc, or :desc, but got #{dir.inspect}"
45
+ end
46
+ "#{attr}@#{dir}"
47
+ end
48
+
49
+ @url_builder.set_query_param(:orderBy, ordering.join(','))
50
+ self
51
+ end
52
+
53
+ alias order order_by
54
+
35
55
  def initialize(resource_name, http_client, url_builder = URLBuilder.new(resource_name.to_s))
36
56
  @base_url = resource_name
37
57
  @http_client = http_client
@@ -1,3 +1,3 @@
1
1
  module KOSapiClient
2
- VERSION = '0.7.1'
2
+ VERSION = '0.8.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kosapi_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tibor Szolár
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-03 00:00:00.000000000 Z
11
+ date: 2018-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -276,6 +276,7 @@ files:
276
276
  - lib/kosapi_client/entity/link.rb
277
277
  - lib/kosapi_client/entity/ml_string.rb
278
278
  - lib/kosapi_client/entity/parallel.rb
279
+ - lib/kosapi_client/entity/parameter.rb
279
280
  - lib/kosapi_client/entity/person.rb
280
281
  - lib/kosapi_client/entity/result_page.rb
281
282
  - lib/kosapi_client/entity/semester.rb