lws 6.2.0 → 6.2.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -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]