swagger_model 0.4.4 → 0.4.5

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: a9d2659d722be43ee0dd4a63e116700ed96f2494
4
- data.tar.gz: 1234256b9a2f189910338006bb641ed05168f97e
3
+ metadata.gz: 3cb3ff5a74100d4be68752e3362d7d87555279c2
4
+ data.tar.gz: ea1d7ff34e9e3d1bc6235e82191ed4124b05a1ab
5
5
  SHA512:
6
- metadata.gz: 83ef1ecfc9ac467d24eaed265facf8f518ae2f7da66fe51f4491f5e8130366aa5c4d8bcf362ba6334518e1476b1da8e630dd1160c66d1f5f8ce3a6f5237cbdfe
7
- data.tar.gz: d31ad0ae4ad00bde40448d2ff9c9aa3d34edbac1d0058783adf832718da8593f9eae5aafbca28764be755c59173f4d82821906e3c9e64570ab119d3938b0e22c
6
+ metadata.gz: c9990cff7967bfa7ce66928b4e56e8bd763c76475650c6e659b6d45d8a9e3fa56e8a4e69e6491d175aa89a34a495e28a8309536b7a77351ea63162036e3b9dbf
7
+ data.tar.gz: f3754297208ebf2396b0b0ec23e7bb4590111ed2f6a0a06c1f2fd668a037ecf077d4f6b7e89bd3efd7af13701a34ccf379e9cb500a25811c8b66f63ae6940934
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- swagger_model (0.4.4)
4
+ swagger_model (0.4.5)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -0,0 +1,21 @@
1
+ require_relative 'relationships'
2
+
3
+ module SwaggerModel
4
+ module SwaggerV2
5
+ class ErrorModel
6
+ def to_swagger_hash
7
+ {
8
+ 'type' => 'object',
9
+ 'properties' => {
10
+ 'status' => {
11
+ 'type' => 'string'
12
+ },
13
+ 'meta' => {
14
+ '$ref' => '#/definitions/ErrorModelMeta'
15
+ }
16
+ }
17
+ }
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,27 @@
1
+ require_relative 'relationships'
2
+
3
+ module SwaggerModel
4
+ module SwaggerV2
5
+ class ErrorModelMeta
6
+ def to_swagger_hash
7
+ {
8
+ 'type' => 'object',
9
+ 'properties' => {
10
+ 'code' => {
11
+ 'type' => 'string'
12
+ },
13
+ 'message' => {
14
+ 'type' => 'string'
15
+ },
16
+ 'messages' => {
17
+ 'type' => 'array',
18
+ 'items' => {
19
+ 'type' => 'string'
20
+ }
21
+ }
22
+ }
23
+ }
24
+ end
25
+ end
26
+ end
27
+ end
@@ -1,3 +1,3 @@
1
1
  module SwaggerModel
2
- VERSION = "0.4.4"
2
+ VERSION = "0.4.5"
3
3
  end
data/lib/swagger_model.rb CHANGED
@@ -12,6 +12,8 @@ require_relative 'swagger_model/relationships'
12
12
  require_relative 'swagger_model/model'
13
13
  require_relative 'swagger_model/included'
14
14
  require_relative 'swagger_model/attributes'
15
+ require_relative 'swagger_model/error_model'
16
+ require_relative 'swagger_model/error_model_meta'
15
17
 
16
18
  module SwaggerModel
17
19
  module OpenAPIv3
@@ -369,6 +371,23 @@ module SwaggerModel
369
371
  response_model[response_name]['properties']['meta'] = meta
370
372
  end
371
373
 
374
+ # Create Error
375
+ if response.has_key?('errors')
376
+ response_model[response_name] = {
377
+ 'type' => 'object',
378
+ 'properties' => {
379
+ 'errors' => {
380
+ 'type' => 'array',
381
+ 'items' => {
382
+ '$ref' => '#/definitions/ErrorModel'
383
+ }
384
+ }
385
+ }
386
+ }
387
+ response_model['ErrorModel'] = ErrorModel.new().to_swagger_hash
388
+ response_model['ErrorModelMeta'] = ErrorModelMeta.new().to_swagger_hash
389
+ end
390
+
372
391
  # Set required
373
392
  response_model[response_name]['required'] = response_model[response_name]['properties'].keys
374
393
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swagger_model
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - marumemomo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-07-26 00:00:00.000000000 Z
11
+ date: 2018-08-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -84,6 +84,8 @@ files:
84
84
  - example/Example.json
85
85
  - lib/swagger_model.rb
86
86
  - lib/swagger_model/attributes.rb
87
+ - lib/swagger_model/error_model.rb
88
+ - lib/swagger_model/error_model_meta.rb
87
89
  - lib/swagger_model/included.rb
88
90
  - lib/swagger_model/links.rb
89
91
  - lib/swagger_model/model.rb