lws 6.2.0 → 6.2.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.
@@ -26,7 +26,7 @@ module LWS::Generic
26
26
  # This method wraps Spyke's .find method so that we can raise
27
27
  # an LWS-specific exception.
28
28
  #
29
- # @param [Fixnum, String] id the ID of the resource to find and
29
+ # @param [Integer, String] id the ID of the resource to find and
30
30
  # retrieve
31
31
  # @raise [LWS::Errors::ResourceNotFound] if not all of the resources
32
32
  # could be found
@@ -84,7 +84,7 @@ module LWS::Generic
84
84
  # = The configuration class
85
85
  class Configuration < Model
86
86
  # @!attribute id [r]
87
- # @return [Fixnum] the (unique) ID of the configuration
87
+ # @return [Integer] the (unique) ID of the configuration
88
88
  attribute :id
89
89
 
90
90
  # @!attribute key
data/lib/lws/apps/maps.rb CHANGED
@@ -40,7 +40,7 @@ module LWS::Maps
40
40
  use_api LWS::Maps.api
41
41
 
42
42
  # @!attribute id [r]
43
- # @return [Fixnum] the (unique) ID of the map
43
+ # @return [Integer] the (unique) ID of the map
44
44
  attribute :id
45
45
 
46
46
  # @!attribute company
@@ -48,7 +48,7 @@ module LWS::Maps
48
48
  belongs_to :company, class_name: "LWS::Auth::Company"
49
49
 
50
50
  # @!attribute company_id
51
- # @return [Fixnum] the ID of the company that maintains/owns the map
51
+ # @return [Integer] the ID of the company that maintains/owns the map
52
52
  attribute :company_id
53
53
 
54
54
  # @!attribute markers
@@ -64,7 +64,7 @@ module LWS::Maps
64
64
  belongs_to :source
65
65
 
66
66
  # @!attribute source_id
67
- # @return [Fixnum] the ID of the map source used for tiling the map
67
+ # @return [Integer] the ID of the map source used for tiling the map
68
68
  attribute :source_id
69
69
 
70
70
  # @!attribute created_at [r]
@@ -81,7 +81,7 @@ module LWS::Maps
81
81
  use_api LWS::Maps.api
82
82
 
83
83
  # @!attribute id [r]
84
- # @return [Fixnum] the (unique) ID of the map marker
84
+ # @return [Integer] the (unique) ID of the map marker
85
85
  attribute :id
86
86
 
87
87
  # @attribute lat
@@ -97,7 +97,7 @@ module LWS::Maps
97
97
  belongs_to :map
98
98
 
99
99
  # @!attribute map_id
100
- # @return [Fixnum] the ID of the map that the marker is placed on
100
+ # @return [Integer] the ID of the map that the marker is placed on
101
101
  attribute :map_id
102
102
 
103
103
  # @!attribute name
@@ -122,7 +122,7 @@ module LWS::Maps
122
122
  use_api LWS::Maps.api
123
123
 
124
124
  # @!attribute id [r]
125
- # @return [Fixnum] the (unique) ID of the map source
125
+ # @return [Integer] the (unique) ID of the map source
126
126
  attribute :id
127
127
 
128
128
  # @!attribute key
@@ -40,32 +40,65 @@ module LWS::Presence
40
40
  use_api LWS::Presence.api
41
41
 
42
42
  # @!attribute id [r]
43
- # @return [Fixnum] the (unique) ID of the location
43
+ # @return [Integer] the (unique) ID of the location
44
44
  attribute :id
45
45
 
46
+ # @!attribute ancestor_ids
47
+ # @return [Array<Integer>] the ID of the locations that containt the location,
48
+ # including the location itself
49
+ attribute :ancestor_ids
50
+
46
51
  # @!attribute capacity
47
- # @return [Fixnum] the capacity (maximum number of people) of the location
48
- # (including descendant locations)
52
+ # @return [Integer] the capacity (maximum number of people) of the location
49
53
  attribute :capacity
50
54
 
55
+ # @!attribute capacity_tree
56
+ # @return [Integer] the capacity (maximum number of people) of the location
57
+ # including descendant locations
58
+ attribute :capacity_tree
59
+
51
60
  # @!attribute capacity_used
52
- # @return [Fixnum] the used capacity (present number of people) of the location
53
- # (including descendant locations)
61
+ # @return [Integer] the used capacity (present number of people) of the location
54
62
  attribute :capacity_used
55
63
 
64
+ # @!attribute capacity_used_tree
65
+ # @return [Integer] the used capacity (present number of people) of the location
66
+ # including descendant locations
67
+ attribute :capacity_used_tree
68
+
56
69
  # @!attribute capacity_used_percentage
57
70
  # @return [Float] the used capacity percentage of the location
58
- # (including descendant locations)
59
71
  attribute :capacity_used_precentage
60
72
 
73
+ # @!attribute capacity_used_percentage_tree
74
+ # @return [Float] the used capacity percentage of the location
75
+ # including descendant locations
76
+ attribute :capacity_used_precentage_tree
77
+
78
+ # @!attribute checkout_location
79
+ # @return [Location, nil] the location to move people to when they
80
+ # are checked out
81
+ belongs_to :checkout_location, class_name: "LWS::Presence::Location",
82
+ foreign_key: "checkout_location_id",
83
+ uri: "locations/:id"
84
+
85
+ # @!attribute checkout_location_id
86
+ # @return [Integer, nil] the ID of the location to move people to when they
87
+ # are checked out
88
+ attribute :checkout_location_id
89
+
61
90
  # @!attribute company
62
91
  # @return [LWS::Auth::Company] the company the location belongs to
63
92
  belongs_to :company, class_name: "LWS::Auth::Company"
64
93
 
65
94
  # @!attribute company_id
66
- # @return [Fixnum] the ID of the company the location belongs to
95
+ # @return [Integer] the ID of the company the location belongs to
67
96
  attribute :company_id
68
97
 
98
+ # @!attribute descendant_ids
99
+ # @return [Array<Integer>] the IDs of the underlying locations of the location
100
+ attribute :descendant_ids
101
+
69
102
  # @!attribute lat
70
103
  # @return [Float] the latitude of the location
71
104
  attribute :lat
@@ -79,28 +112,38 @@ module LWS::Presence
79
112
  # @return [Float] the longitude of the location
80
113
  attribute :long
81
114
 
82
- # @!attribute map_location_id
83
- # @note
84
- # There is not a relation for this at the moment!
85
- # @return [Fixnum] the ID of the map location associated with the location
86
- attribute :map_location_id
115
+ # @!attribute map_positions
116
+ # @return [Array<Location::Map::Position>] the positions
117
+ # that are associated with the location
118
+ has_many :map_positions, class_name: "LWS::Presence::Location::Map::Position"
119
+
120
+ # @attribute maps
121
+ # @return [Array<Location::Map>] the maps for this location
122
+ has_many :maps, class_name: "LWS::Presence::Location::Map"
87
123
 
88
124
  # @!attribute name
89
125
  # @return [String] the name of the location
90
126
  attribute :name
91
127
 
92
128
  # @!attribute parent
93
- # @return [Location] the parent of the location
94
- belongs_to :parent, class_name: "LWS::Presence::Location"
129
+ # @return [Location] the parent of the location
130
+ belongs_to :parent, class_name: "LWS::Presence::Location",
131
+ foreign_key: "parent_id",
132
+ uri: "locations/:id"
95
133
 
96
134
  # @!attribute parent_id
97
- # @return [Fixnum] the ID of the parent of the location
135
+ # @return [Integer] the ID of the parent of the location
98
136
  attribute :parent_id
99
137
 
100
138
  # @!attribute people
101
- # @return [Array<Person>] the people associated with the location
139
+ # @return [Array<Person>] the people associated with the location
102
140
  has_many :people
103
141
 
142
+ # @!attribute people_tree
143
+ # @return [Array<Person>] the people associated with the location
144
+ # including descendant locations
145
+ has_many :people_tree, class_name: "LWS::Presence::Person"
146
+
104
147
  # @!attribute range
105
148
  # @return [Integer] the range around the location in meters
106
149
  attribute :range
@@ -118,12 +161,126 @@ module LWS::Presence
118
161
  attribute :updated_at
119
162
  end
120
163
 
164
+ # = The location map class
165
+ #
166
+ # @note
167
+ # This class is only used within the context of the {Location} class.
168
+ class Location::Map < LWS::Generic::Model
169
+ use_api LWS::Presence.api
170
+ uri "locations/:location_id/maps(/:id)"
171
+
172
+ # @!attribute id [r]
173
+ # @return [Integer] the (unique) ID of the location
174
+ attribute :id
175
+
176
+ # @!attribute location
177
+ # @return [Location] the location the map belongs to
178
+ belongs_to :location
179
+
180
+ # @!attribute location_id
181
+ # @return [Integer] the ID of the location the map belongs to
182
+ attribute :location_id
183
+
184
+ # @!attribute name
185
+ # @return [String, nil] the name of the map
186
+ attribute :name
187
+
188
+ # @!attribute picture_url
189
+ # @return [String, nil] the URL of the picture of the map
190
+ attribute :picture_url
191
+
192
+ # @!attribute position
193
+ # @return [Integer] the position (index) of the map, if multiple are
194
+ # present
195
+ attribute :position
196
+
197
+ # @!attribute positions
198
+ # @return [Array<Location::Map::Position>] the positions linked to this
199
+ # map
200
+ has_many :positions
201
+
202
+ # @!attribute created_at [r]
203
+ # @return [String] the timestamp of when the location was created
204
+ attribute :created_at
205
+
206
+ # @!attribute updated_at [r]
207
+ # @return [String] the timestamp of when the location was last updated
208
+ attribute :updated_at
209
+ end
210
+
211
+ # = The map position class
212
+ #
213
+ # @note
214
+ # This class is only used within the context of the {Location::Map} class.
215
+ class Location::Map::Position < LWS::Generic::Model
216
+ use_api LWS::Presence.api
217
+ uri "locations/:location_id/maps/:location_map_id/positions(/:id)"
218
+
219
+ # @!attribute id [r]
220
+ # @return [Integer] the (unique) ID of the location
221
+ attribute :id
222
+
223
+ # @!attribute height
224
+ # @return [Integer] the height of the position on the map in percentage
225
+ attribute :height
226
+
227
+ # @!attribute location
228
+ # @return [Location] the location of the map this position is
229
+ # associated with
230
+ belongs_to :location
231
+
232
+ # @!attribute location_id
233
+ # @return [Location] the ID of the location of the location map this
234
+ # position is associated with
235
+ attribute :location_id
236
+
237
+ # @!attribute location_map
238
+ # @return [Location::Map] the location map the position belongs to
239
+ belongs_to :location_map, class_name: "LWS::Presence::Location::Map",
240
+ foreign_key: "location_map_id",
241
+ uri: "locations/:location_id/maps/:id"
242
+
243
+ # @!attribute location_map_id
244
+ # @return [Integer] the ID of the location map the position belongs to
245
+ attribute :location_map_id
246
+
247
+ # @!attribute tracking_location
248
+ # @return [Location] the location the position tracks on the map
249
+ belongs_to :tracking_location, class_name: "LWS::Presence::Location",
250
+ foreign_key: "tracking_location_id",
251
+ uri: "locations/:id"
252
+
253
+ # @!attribute tracking_location_id
254
+ # @return [Integer] the ID of the location the position tracks on the map
255
+ attribute :tracking_location_id
256
+
257
+ # @!attribute width
258
+ # @return [Integer] the width of the position on the map in percentage
259
+ attribute :width
260
+
261
+ # @!attribute x_pos
262
+ # @return [Integer] the x_pos of the position on the map in percentage
263
+ attribute :x_pos
264
+
265
+ # @!attribute y_pos
266
+ # @return [Integer] the y_pos of the position on the map in percentage
267
+ attribute :y_pos
268
+
269
+ # @!attribute created_at [r]
270
+ # @return [String] the timestamp of when the location was created
271
+ attribute :created_at
272
+
273
+ # @!attribute updated_at [r]
274
+ # @return [String] the timestamp of when the location was last updated
275
+ attribute :updated_at
276
+ end
277
+
121
278
  # = The person class
122
279
  class Person < LWS::Generic::Model
123
280
  use_api LWS::Presence.api
124
281
 
125
282
  # @!attribute id [r]
126
- # @return [Fixnum] the (unique) ID of the person
283
+ # @return [Integer] the (unique) ID of the person
127
284
  attribute :id
128
285
 
129
286
  # @!attribute company
@@ -131,7 +288,7 @@ module LWS::Presence
131
288
  belongs_to :company, class_name: "LWS::Auth::Company"
132
289
 
133
290
  # @!attribute company_id
134
- # @return [Fixnum] the ID of the company the person belongs to
291
+ # @return [Integer] the ID of the company the person belongs to
135
292
  attribute :company_id
136
293
 
137
294
  # @!attribute customer_reference
@@ -139,8 +296,8 @@ module LWS::Presence
139
296
  attribute :customer_reference
140
297
 
141
298
  # @!attribute ero
142
- # @return [Boolean] whether the person is emergency response
143
- # certified
299
+ # @return [Boolean] whether the person is emergency response
300
+ # ceritified
144
301
  attribute :ero
145
302
 
146
303
  # @!attribute extra_info
@@ -164,8 +321,13 @@ module LWS::Presence
164
321
  # @return [Location] the location the person is located at
165
322
  belongs_to :location
166
323
 
324
+ # @!attribute location_ancestors_ids
325
+ # @return [Array<Integer>] the IDs of the (nesting) locations
326
+ # the person is located at
327
+ attribute :location_ancestor_ids
328
+
167
329
  # @!attribute location_id
168
- # @return [Fixnum] the ID of the location the person is located at
330
+ # @return [Integer] the ID of the location the person is located at
169
331
  attribute :location_id
170
332
 
171
333
  # @!attribute name
@@ -190,6 +352,10 @@ module LWS::Presence
190
352
  # linked to the person
191
353
  attribute :udid
192
354
 
355
+ # @!attribute visibility
356
+ # @return ["public", "private"] if a person should be protected by not showing critical information
357
+ attribute :visibility
358
+
193
359
  # @!attribute created_at [r]
194
360
  # @return [String] the timestamp of when the person was created
195
361
  attribute :created_at
@@ -204,11 +370,11 @@ module LWS::Presence
204
370
  use_api LWS::Presence.api
205
371
 
206
372
  # @!attribute id [r]
207
- # @return [Fixnum] the (unique) ID of the reader
373
+ # @return [Integer] the (unique) ID of the reader
208
374
  attribute :id
209
375
 
210
376
  # @!attribute gateway
211
- # @return [Fixnum] the (32-bit) LCIO gateway ID of the reader
377
+ # @return [Integer] the (32-bit) LCIO gateway ID of the reader
212
378
  attribute :gateway
213
379
 
214
380
  # @!attribute location
@@ -216,11 +382,11 @@ module LWS::Presence
216
382
  belongs_to :location
217
383
 
218
384
  # @!attribute location_id
219
- # @return [Fixnum] the ID of the location of the reader
385
+ # @return [Integer] the ID of the location of the reader
220
386
  attribute :location_id
221
387
 
222
388
  # @!attribute node
223
- # @return [Fixnum] the (8-bit) LCIO gateway node number of the reader
389
+ # @return [Integer] the (8-bit) LCIO gateway node number of the reader
224
390
  attribute :node
225
391
 
226
392
  # @!attribute created_at [r]
@@ -46,7 +46,7 @@ module LWS::Resource
46
46
  use_api LWS::Resource.api
47
47
 
48
48
  # @!attribute id [r]
49
- # @return [Fixnum] the (unique) ID of the collection
49
+ # @return [Integer] the (unique) ID of the collection
50
50
  attribute :id
51
51
 
52
52
  # @!attribute account
@@ -55,7 +55,7 @@ module LWS::Resource
55
55
  belongs_to :account, class_name: "LWS::Auth::Account"
56
56
 
57
57
  # @!attribute account_id
58
- # @return [Fixnum] the ID of the account of the user that created the
58
+ # @return [Integer] the ID of the account of the user that created the
59
59
  # collection
60
60
  attribute :account_id
61
61
 
@@ -64,7 +64,7 @@ module LWS::Resource
64
64
  belongs_to :company, class_name: "LWS::Auth::Company"
65
65
 
66
66
  # @!attribute company_id
67
- # @return [Fixnum] the ID of the company the collection belongs to
67
+ # @return [Integer] the ID of the company the collection belongs to
68
68
  attribute :company_id
69
69
 
70
70
  # @!attribute folder
@@ -72,7 +72,7 @@ module LWS::Resource
72
72
  belongs_to :folder
73
73
 
74
74
  # @!attribute folder_id
75
- # @return [Fixnum] the ID of the folder that the collection is
75
+ # @return [Integer] the ID of the folder that the collection is
76
76
  # filed in
77
77
  attribute :folder_id
78
78
 
@@ -155,7 +155,7 @@ module LWS::Resource
155
155
  uri "collections/:collection_id/items(/:id)"
156
156
 
157
157
  # @!attribute id [r]
158
- # @return [Fixnum] the (unique) ID of the collection item
158
+ # @return [Integer] the (unique) ID of the collection item
159
159
  attribute :id
160
160
 
161
161
  # @!attribute collection
@@ -164,7 +164,7 @@ module LWS::Resource
164
164
  belongs_to :collection
165
165
 
166
166
  # @!attribute collection_id
167
- # @return [Fixnum] the ID of the collection that the collection item is a
167
+ # @return [Integer] the ID of the collection that the collection item is a
168
168
  # part of
169
169
  attribute :collection_id
170
170
 
@@ -226,7 +226,7 @@ module LWS::Resource
226
226
  attribute :modification_date
227
227
 
228
228
  # @!attribute order_priority
229
- # @return [Fixnum] the order priority of the of the post (ascending;
229
+ # @return [Integer] the order priority of the of the post (ascending;
230
230
  # 0 is lowers)
231
231
  attribute :order_priority
232
232
 
@@ -263,7 +263,7 @@ module LWS::Resource
263
263
  uri: "collections/:collection_id/feeds/:feed_id/posts(/:id)"
264
264
 
265
265
  # @!attribute refresh_interval
266
- # @return [Fixnum] the interval used to refresh the feed (in seconds)
266
+ # @return [Integer] the interval used to refresh the feed (in seconds)
267
267
  attribute :refresh_interval
268
268
  end
269
269
 
@@ -279,7 +279,7 @@ module LWS::Resource
279
279
  uri: "collections/:collection_id/feeds(/:id)"
280
280
 
281
281
  # @!attribute feed_id
282
- # @return [Fixnum] the ID of the collection feed that the collection
282
+ # @return [Integer] the ID of the collection feed that the collection
283
283
  # feed is a post is part of
284
284
  attribute :feed_id
285
285
  end
@@ -360,7 +360,7 @@ module LWS::Resource
360
360
  attribute :long
361
361
 
362
362
  # @!attribute refresh_intervla
363
- # @return [Fixnum] the interval used to refresh the weather location
363
+ # @return [Integer] the interval used to refresh the weather location
364
364
  # (in seconds)
365
365
  attribute :refresh_interval
366
366
 
@@ -379,15 +379,15 @@ module LWS::Resource
379
379
  uri "collections/:collection_id/weather_locations/:weather_location_id/forecasts(/:id)"
380
380
 
381
381
  # @!attribute code
382
- # @return [Fixnum] the code for the weather location forecast
382
+ # @return [Integer] the code for the weather location forecast
383
383
  attribute :code
384
384
 
385
385
  # @!attribute date
386
- # @return [Fixnum] the timestamp of the date of the weather location forecast
386
+ # @return [Integer] the timestamp of the date of the weather location forecast
387
387
  attribute :date
388
388
 
389
389
  # @!attribute description
390
- # @return [Fixnum] the description of the weather location forecast
390
+ # @return [Integer] the description of the weather location forecast
391
391
  attribute :description
392
392
 
393
393
  # @!attribute observation
@@ -411,7 +411,7 @@ module LWS::Resource
411
411
  uri: "collections/:collection_id/weather_location(/:id)"
412
412
 
413
413
  # @!attribute weather_location_id
414
- # @return [Fixnum] the ID of the collection weather location that the
414
+ # @return [Integer] the ID of the collection weather location that the
415
415
  # collection weather location is a post is part of
416
416
  attribute :weather_location_id
417
417
 
@@ -428,7 +428,7 @@ module LWS::Resource
428
428
  use_api LWS::Resource.api
429
429
 
430
430
  # @!attribute id [r]
431
- # @return [Fixnum] the (unique) ID of the folder
431
+ # @return [Integer] the (unique) ID of the folder
432
432
  attribute :id
433
433
 
434
434
  # @!attribute account
@@ -437,7 +437,7 @@ module LWS::Resource
437
437
  belongs_to :account, class_name: "LWS::Auth::Account"
438
438
 
439
439
  # @!attribute account_id
440
- # @return [Fixnum] the ID of the account of the user that created
440
+ # @return [Integer] the ID of the account of the user that created
441
441
  # the folder
442
442
  attribute :account_id
443
443
 
@@ -450,7 +450,7 @@ module LWS::Resource
450
450
  belongs_to :company, class_name: "LWS::Auth::Company"
451
451
 
452
452
  # @!attribute company_id
453
- # @return [Fixnum] the ID of the company the folder belongs to
453
+ # @return [Integer] the ID of the company the folder belongs to
454
454
  attribute :company_id
455
455
 
456
456
  # @!attribute folders
@@ -471,7 +471,7 @@ module LWS::Resource
471
471
  foreign_key: "parent_id"
472
472
 
473
473
  # @!attribute parent_id
474
- # @return [Fixnum, nil] the ID of the parent folder of the folder
474
+ # @return [Integer, nil] the ID of the parent folder of the folder
475
475
  attribute :parent_id
476
476
 
477
477
  # @!attribute created_at [r]