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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b3366ed15070ee58fd12d4aca2c4172bdc325d0b
4
- data.tar.gz: 25d1dc406ec0b86a98e5cbc8f0e73a874fe353d4
3
+ metadata.gz: 1bd477b4e6bf093b8f9817a428e645cddd5da250
4
+ data.tar.gz: d8b667c97f31ce09d02e6c83a79983dea2ed6748
5
5
  SHA512:
6
- metadata.gz: '03186a18bff8bf375d8ba4ace4dfe300fe2ef054f4b41d36bfc7c2b3d6a0745172ba54f01b8e7b7993c519965ee1ad396c7cea38dac11272316c086effa03e13'
7
- data.tar.gz: 1eb9c9ba093c3fe903ffdc9a4c057c897682e0297c925d1114265ea679e5f1f0f7e2a33f2eb634518a4d336c14ca3476007a6f0649e4d9c89e44b6342cb43e5c
6
+ metadata.gz: 0e1c974e579c0d24341af65ab05bc41e47008b48e38bfcacaef33918d2ab2eec54d4be32ef668de599357cf9591c9c51c4c68eced63b5db5996252597f9bc447
7
+ data.tar.gz: abf46c37dea75d4b5a3c900339c333e6979ede886db8b7f86dd94b66c5d31c880d0cddd1208845d4797a97425b8ff33e8422826c2d092792e495e1dc66aa478a
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- swagger_model (0.3.1)
4
+ swagger_model (0.3.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,3 +1,3 @@
1
1
  module SwaggerModel
2
- VERSION = "0.3.1"
2
+ VERSION = "0.3.2"
3
3
  end
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
- @logger.error("Cannot create model because of included `included` key")
260
- exit
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 = {}
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swagger_model
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - marumemomo