swagger_model 0.3.1 → 0.3.2
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 +4 -4
- data/Gemfile.lock +1 -1
- data/lib/swagger_model/version.rb +1 -1
- data/lib/swagger_model.rb +24 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1bd477b4e6bf093b8f9817a428e645cddd5da250
|
4
|
+
data.tar.gz: d8b667c97f31ce09d02e6c83a79983dea2ed6748
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0e1c974e579c0d24341af65ab05bc41e47008b48e38bfcacaef33918d2ab2eec54d4be32ef668de599357cf9591c9c51c4c68eced63b5db5996252597f9bc447
|
7
|
+
data.tar.gz: abf46c37dea75d4b5a3c900339c333e6979ede886db8b7f86dd94b66c5d31c880d0cddd1208845d4797a97425b8ff33e8422826c2d092792e495e1dc66aa478a
|
data/Gemfile.lock
CHANGED
data/lib/swagger_model.rb
CHANGED
@@ -256,8 +256,17 @@ module SwaggerModel
|
|
256
256
|
end
|
257
257
|
when 'Array'
|
258
258
|
if key == 'included'
|
259
|
-
|
260
|
-
|
259
|
+
obj['type'] = 'array'
|
260
|
+
obj['items'] = {}
|
261
|
+
array = parse_array_with_multi_model(value, model, root_key)
|
262
|
+
p array
|
263
|
+
if array.size < 2
|
264
|
+
obj['type'] = 'array'
|
265
|
+
obj['items'] = array[0]
|
266
|
+
else
|
267
|
+
@logger.error("Cannot create model because of 2 or more models included in Array")
|
268
|
+
exit
|
269
|
+
end
|
261
270
|
else
|
262
271
|
obj['type'] = 'array'
|
263
272
|
obj['items'] = parse_array(value, model, root_key)
|
@@ -291,6 +300,19 @@ module SwaggerModel
|
|
291
300
|
get_property(nil, value, model, root_key)
|
292
301
|
end
|
293
302
|
|
303
|
+
def self.parse_array_with_multi_model(items, model, root_key)
|
304
|
+
types = []
|
305
|
+
refs = []
|
306
|
+
items.each do |value|
|
307
|
+
property = get_property(nil, value, model, root_key)
|
308
|
+
if !refs.include?(property['$ref'])
|
309
|
+
types.push(get_property(nil, value, model, root_key))
|
310
|
+
refs.push(property['$ref'])
|
311
|
+
end
|
312
|
+
end
|
313
|
+
types
|
314
|
+
end
|
315
|
+
|
294
316
|
def self.parse_object(res, model, root_key)
|
295
317
|
keys = res.keys
|
296
318
|
m = {}
|