lambda_open_api 0.1.4 → 0.2.1
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/lambda_open_api/body_parameter.rb +1 -7
- data/lib/lambda_open_api/body_property.rb +16 -0
- data/lib/lambda_open_api/builder.rb +1 -0
- data/lib/lambda_open_api/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6137354cc87bf29a177cf14e7c39685eea487dd949efe030370e60e9b5dc7024
|
4
|
+
data.tar.gz: 9642be6e3096151850396b1ba80fc7192f2a76fac3345ccac6a2c44976bf8638
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54c93d2b44d05e8874ce6eb70b864c21a24c2a026cc393aaaed74889a827dd2868364bf43d8635f174a1ba314c4c6656d0b906ee2339d8dd05923d780eee2ee8
|
7
|
+
data.tar.gz: 93571cf6046621d4efb026b9a0566f88487f6e3f56f60324ddd4136d8070497a8e81cf517087c6da16514051751fd136ecc11fa3e69e74813d684b5da0d3919e
|
data/Gemfile.lock
CHANGED
@@ -4,14 +4,8 @@ module LambdaOpenApi
|
|
4
4
|
class BodyParameter
|
5
5
|
attr_accessor :data
|
6
6
|
|
7
|
-
def initialize(data = nil
|
8
|
-
@file_name = file_name
|
9
|
-
|
7
|
+
def initialize(data = nil)
|
10
8
|
@data = data
|
11
|
-
if data.nil? && File.exists?("lib/lambda_open_api/examples/requests/#{file_name}.json")
|
12
|
-
json = File.open("lib/lambda_open_api/examples/requests/#{file_name}.json").read
|
13
|
-
@data = JSON.parse(json)
|
14
|
-
end
|
15
9
|
end
|
16
10
|
|
17
11
|
def json
|
@@ -15,6 +15,22 @@ module LambdaOpenApi
|
|
15
15
|
"type"=> "object",
|
16
16
|
"properties"=> hash.props
|
17
17
|
}
|
18
|
+
elsif value.is_a?(Array)
|
19
|
+
item_props = {}
|
20
|
+
|
21
|
+
value.each do |item|
|
22
|
+
hash = LambdaOpenApi::BodyProperty.new
|
23
|
+
hash.generate(item)
|
24
|
+
item_props.merge!(hash.props)
|
25
|
+
end
|
26
|
+
|
27
|
+
props[key.to_s] = {
|
28
|
+
"type"=> "array",
|
29
|
+
"items"=> {
|
30
|
+
"type" => "object",
|
31
|
+
"properties" => item_props
|
32
|
+
}
|
33
|
+
}
|
18
34
|
else
|
19
35
|
props[key.to_s] = {
|
20
36
|
"type"=> value_type(value)
|
@@ -83,6 +83,7 @@ module LambdaOpenApi
|
|
83
83
|
@event.resource = path.gsub(LambdaOpenApi::Action::PARAMATER_EXPRESION) {|match|
|
84
84
|
match = hash[match.delete('{}:').to_sym]
|
85
85
|
}
|
86
|
+
@event.path_parameters = hash.inject({}) {|hash, (key, value)| hash[key.to_s] = value; hash}
|
86
87
|
end
|
87
88
|
|
88
89
|
def invoke_lambda
|