Class: Swaggerless::SwaggerExtractor
- Inherits:
-
Object
- Object
- Swaggerless::SwaggerExtractor
- Defined in:
- lib/swaggerless/swaggerextractor.rb
Instance Method Summary collapse
- #get_lambda_map(swagger) ⇒ Object
- #process_lambda_config(lambdas_map, objContainingLambdaConfig, swagger) ⇒ Object
Instance Method Details
#get_lambda_map(swagger) ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/swaggerless/swaggerextractor.rb', line 19 def get_lambda_map(swagger) lambdas_map = Hash.new swagger["paths"].each do |path, path_config| path_config.each do |method, method_config| process_lambda_config(lambdas_map, method_config, swagger) end end if swagger.key?("securityDefinitions") then swagger["securityDefinitions"].each do |securityDefinitionName, securityDefinition| if securityDefinition[AMZ_APIGATEWAY_AUTHORIZER] != nil process_lambda_config(lambdas_map, securityDefinition, swagger) end end end return lambdas_map end |
#process_lambda_config(lambdas_map, objContainingLambdaConfig, swagger) ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/swaggerless/swaggerextractor.rb', line 36 def process_lambda_config(lambdas_map, objContainingLambdaConfig, swagger) if lambdas_map[objContainingLambdaConfig[EXT_LAMBDA_NAME]] stored_version = lambdas_map[objContainingLambdaConfig[EXT_LAMBDA_NAME]]; encountered_version = build_lambda_config_hash(objContainingLambdaConfig) fill_in_config_gaps(stored_version, encountered_version) unless is_lambda_config_correct(stored_version, encountered_version) raise "Lambda #{objContainingLambdaConfig[EXT_LAMBDA_NAME]} mentioned multiple times in configuration with different settings" end lambdas_map[objContainingLambdaConfig[EXT_LAMBDA_NAME]][:description] = 'Part of ' + Deployer.get_service_prefix(swagger) elsif objContainingLambdaConfig[EXT_LAMBDA_NAME] lambdas_map[objContainingLambdaConfig[EXT_LAMBDA_NAME]] = build_lambda_config_hash(objContainingLambdaConfig) end end |