swagger_model 0.3.1 → 0.3.2
Sign up to get free protection for your applications and to get access to all the features.
- 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 = {}
|