forked from loafle/openapi-generator-original
[ruby] Not symbolize header param keys to allow the usage of underscore ("_") character (#16396)
* [ruby] Not symbolize header param keys to allow the usage of underscore ("_") character * use lambda to convert header key to a string if underscore is included
This commit is contained in:
parent
55252f4b25
commit
56105fbbe6
@ -17,6 +17,8 @@
|
||||
|
||||
package org.openapitools.codegen.languages;
|
||||
|
||||
import com.samskivert.mustache.Mustache;
|
||||
import com.samskivert.mustache.Template;
|
||||
import io.swagger.v3.oas.models.media.Schema;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.openapitools.codegen.*;
|
||||
@ -30,6 +32,8 @@ import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.Writer;
|
||||
import java.util.*;
|
||||
|
||||
import static org.openapitools.codegen.utils.StringUtils.camelize;
|
||||
@ -286,6 +290,18 @@ public class RubyClientCodegen extends AbstractRubyCodegen {
|
||||
.doNotOverwrite());
|
||||
supportingFiles.add(new SupportingFile("api_client_spec.mustache", specFolder, "api_client_spec.rb")
|
||||
.doNotOverwrite());
|
||||
|
||||
// add lambda to convert a symbol to a string if an underscore is included (e.g. :'user_uuid' => 'user_uuid')
|
||||
additionalProperties.put("lambdaFixHeaderKey", new Mustache.Lambda() {
|
||||
@Override
|
||||
public void execute(Template.Fragment fragment, Writer writer) throws IOException {
|
||||
String content = fragment.execute();
|
||||
if (content.contains("_")) {
|
||||
content = content.substring(1);
|
||||
}
|
||||
writer.write(content);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -199,12 +199,12 @@ module {{moduleName}}
|
||||
{{/hasConsumes}}
|
||||
{{#headerParams}}
|
||||
{{#required}}
|
||||
header_params[:'{{{baseName}}}'] = {{#collectionFormat}}@api_client.build_collection_param({{{paramName}}}, :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}{{{paramName}}}{{/collectionFormat}}
|
||||
header_params[{{#lambdaFixHeaderKey}}:'{{{baseName}}}'{{/lambdaFixHeaderKey}}] = {{#collectionFormat}}@api_client.build_collection_param({{{paramName}}}, :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}{{{paramName}}}{{/collectionFormat}}
|
||||
{{/required}}
|
||||
{{/headerParams}}
|
||||
{{#headerParams}}
|
||||
{{^required}}
|
||||
header_params[:'{{{baseName}}}'] = {{#collectionFormat}}@api_client.build_collection_param(opts[:'{{{paramName}}}'], :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}opts[:'{{{paramName}}}']{{/collectionFormat}} if !opts[:'{{{paramName}}}'].nil?
|
||||
header_params[{{#lambdaFixHeaderKey}}:'{{{baseName}}}'{{/lambdaFixHeaderKey}}] = {{#collectionFormat}}@api_client.build_collection_param(opts[:'{{{paramName}}}'], :{{{collectionFormat}}}){{/collectionFormat}}{{^collectionFormat}}opts[:'{{{paramName}}}']{{/collectionFormat}} if !opts[:'{{{paramName}}}'].nil?
|
||||
{{/required}}
|
||||
{{/headerParams}}
|
||||
|
||||
|
@ -168,7 +168,7 @@ module Petstore
|
||||
if !content_type.nil?
|
||||
header_params['Content-Type'] = content_type
|
||||
end
|
||||
header_params[:'header_1'] = opts[:'header_1'] if !opts[:'header_1'].nil?
|
||||
header_params['header_1'] = opts[:'header_1'] if !opts[:'header_1'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
@ -1031,8 +1031,8 @@ module Petstore
|
||||
if !content_type.nil?
|
||||
header_params['Content-Type'] = content_type
|
||||
end
|
||||
header_params[:'enum_header_string_array'] = @api_client.build_collection_param(opts[:'enum_header_string_array'], :csv) if !opts[:'enum_header_string_array'].nil?
|
||||
header_params[:'enum_header_string'] = opts[:'enum_header_string'] if !opts[:'enum_header_string'].nil?
|
||||
header_params['enum_header_string_array'] = @api_client.build_collection_param(opts[:'enum_header_string_array'], :csv) if !opts[:'enum_header_string_array'].nil?
|
||||
header_params['enum_header_string'] = opts[:'enum_header_string'] if !opts[:'enum_header_string'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
@ -1122,8 +1122,8 @@ module Petstore
|
||||
|
||||
# header parameters
|
||||
header_params = opts[:header_params] || {}
|
||||
header_params[:'required_boolean_group'] = required_boolean_group
|
||||
header_params[:'boolean_group'] = opts[:'boolean_group'] if !opts[:'boolean_group'].nil?
|
||||
header_params['required_boolean_group'] = required_boolean_group
|
||||
header_params['boolean_group'] = opts[:'boolean_group'] if !opts[:'boolean_group'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
|
@ -118,7 +118,7 @@ module Petstore
|
||||
|
||||
# header parameters
|
||||
header_params = opts[:header_params] || {}
|
||||
header_params[:'api_key'] = opts[:'api_key'] if !opts[:'api_key'].nil?
|
||||
header_params['api_key'] = opts[:'api_key'] if !opts[:'api_key'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
|
@ -168,7 +168,7 @@ module Petstore
|
||||
if !content_type.nil?
|
||||
header_params['Content-Type'] = content_type
|
||||
end
|
||||
header_params[:'header_1'] = opts[:'header_1'] if !opts[:'header_1'].nil?
|
||||
header_params['header_1'] = opts[:'header_1'] if !opts[:'header_1'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
@ -1031,8 +1031,8 @@ module Petstore
|
||||
if !content_type.nil?
|
||||
header_params['Content-Type'] = content_type
|
||||
end
|
||||
header_params[:'enum_header_string_array'] = @api_client.build_collection_param(opts[:'enum_header_string_array'], :csv) if !opts[:'enum_header_string_array'].nil?
|
||||
header_params[:'enum_header_string'] = opts[:'enum_header_string'] if !opts[:'enum_header_string'].nil?
|
||||
header_params['enum_header_string_array'] = @api_client.build_collection_param(opts[:'enum_header_string_array'], :csv) if !opts[:'enum_header_string_array'].nil?
|
||||
header_params['enum_header_string'] = opts[:'enum_header_string'] if !opts[:'enum_header_string'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
@ -1122,8 +1122,8 @@ module Petstore
|
||||
|
||||
# header parameters
|
||||
header_params = opts[:header_params] || {}
|
||||
header_params[:'required_boolean_group'] = required_boolean_group
|
||||
header_params[:'boolean_group'] = opts[:'boolean_group'] if !opts[:'boolean_group'].nil?
|
||||
header_params['required_boolean_group'] = required_boolean_group
|
||||
header_params['boolean_group'] = opts[:'boolean_group'] if !opts[:'boolean_group'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
|
@ -118,7 +118,7 @@ module Petstore
|
||||
|
||||
# header parameters
|
||||
header_params = opts[:header_params] || {}
|
||||
header_params[:'api_key'] = opts[:'api_key'] if !opts[:'api_key'].nil?
|
||||
header_params['api_key'] = opts[:'api_key'] if !opts[:'api_key'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
|
@ -168,7 +168,7 @@ module Petstore
|
||||
if !content_type.nil?
|
||||
header_params['Content-Type'] = content_type
|
||||
end
|
||||
header_params[:'header_1'] = opts[:'header_1'] if !opts[:'header_1'].nil?
|
||||
header_params['header_1'] = opts[:'header_1'] if !opts[:'header_1'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
@ -562,8 +562,8 @@ module Petstore
|
||||
|
||||
# header parameters
|
||||
header_params = opts[:header_params] || {}
|
||||
header_params[:'_type'] = underscore_type
|
||||
header_params[:'type_'] = type_with_underscore
|
||||
header_params['_type'] = underscore_type
|
||||
header_params['type_'] = type_with_underscore
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
@ -1112,8 +1112,8 @@ module Petstore
|
||||
if !content_type.nil?
|
||||
header_params['Content-Type'] = content_type
|
||||
end
|
||||
header_params[:'enum_header_string_array'] = @api_client.build_collection_param(opts[:'enum_header_string_array'], :csv) if !opts[:'enum_header_string_array'].nil?
|
||||
header_params[:'enum_header_string'] = opts[:'enum_header_string'] if !opts[:'enum_header_string'].nil?
|
||||
header_params['enum_header_string_array'] = @api_client.build_collection_param(opts[:'enum_header_string_array'], :csv) if !opts[:'enum_header_string_array'].nil?
|
||||
header_params['enum_header_string'] = opts[:'enum_header_string'] if !opts[:'enum_header_string'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
@ -1203,8 +1203,8 @@ module Petstore
|
||||
|
||||
# header parameters
|
||||
header_params = opts[:header_params] || {}
|
||||
header_params[:'required_boolean_group'] = required_boolean_group
|
||||
header_params[:'boolean_group'] = opts[:'boolean_group'] if !opts[:'boolean_group'].nil?
|
||||
header_params['required_boolean_group'] = required_boolean_group
|
||||
header_params['boolean_group'] = opts[:'boolean_group'] if !opts[:'boolean_group'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
|
@ -118,7 +118,7 @@ module Petstore
|
||||
|
||||
# header parameters
|
||||
header_params = opts[:header_params] || {}
|
||||
header_params[:'api_key'] = opts[:'api_key'] if !opts[:'api_key'].nil?
|
||||
header_params['api_key'] = opts[:'api_key'] if !opts[:'api_key'].nil?
|
||||
|
||||
# form parameters
|
||||
form_params = opts[:form_params] || {}
|
||||
|
Loading…
x
Reference in New Issue
Block a user