From ba63aa55a5d73783b1557e8d5904c30198ebd0be Mon Sep 17 00:00:00 2001 From: Dennis Melzer Date: Fri, 2 Aug 2019 15:24:04 +0200 Subject: [PATCH] Add lowercase lamda (#3501) * Add lowercase lamda #3381 * Add lowercase prefix for spring #3381 * Add lamda prefix * Add lamda lower case to @Value * Add properties for braces #3381 * Add property for braces * Start CI * Revert --- .../codegen/languages/SpringCodegen.java | 7 ++++- .../spring-cloud/clientConfiguration.mustache | 28 +++++++++---------- .../configuration/ClientConfiguration.java | 10 +++---- 3 files changed, 25 insertions(+), 20 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java index cff6cc3ad75..1629e35d5ce 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java @@ -69,6 +69,9 @@ public class SpringCodegen extends AbstractJavaCodegen public static final String RETURN_SUCCESS_CODE = "returnSuccessCode"; public static final String UNHANDLED_EXCEPTION_HANDLING = "unhandledException"; + public static final String OPEN_BRACE = "{"; + public static final String CLOSE_BRACE = "}"; + protected String title = "OpenAPI Spring"; protected String configPackage = "org.openapitools.configuration"; protected String basePackage = "org.openapitools"; @@ -103,7 +106,7 @@ public class SpringCodegen extends AbstractJavaCodegen invokerPackage = "org.openapitools.api"; artifactId = "openapi-spring"; - // clioOptions default redifinition need to be updated + // clioOptions default redefinition need to be updated updateOption(CodegenConstants.INVOKER_PACKAGE, this.getInvokerPackage()); updateOption(CodegenConstants.ARTIFACT_ID, this.getArtifactId()); updateOption(CodegenConstants.API_PACKAGE, apiPackage); @@ -113,6 +116,8 @@ public class SpringCodegen extends AbstractJavaCodegen // spring uses the jackson lib additionalProperties.put("jackson", "true"); + additionalProperties.put("openbrace", OPEN_BRACE); + additionalProperties.put("closebrace", CLOSE_BRACE); cliOptions.add(new CliOption(TITLE, "server title name or client service name").defaultValue(title)); cliOptions.add(new CliOption(CONFIG_PACKAGE, "configuration package for generated code").defaultValue(this.getConfigPackage())); diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/libraries/spring-cloud/clientConfiguration.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/libraries/spring-cloud/clientConfiguration.mustache index 3e86330c91b..99d82b2c7d5 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/libraries/spring-cloud/clientConfiguration.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/libraries/spring-cloud/clientConfiguration.mustache @@ -24,25 +24,25 @@ public class ClientConfiguration { {{#authMethods}} {{#isBasic}} - {{=<% %>=}}@Value("${<%title%>.security.<%name%>.username:}")<%={{ }}=%> + @Value("${{openbrace}}{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.username:{{closebrace}}") private String {{{name}}}Username; - {{=<% %>=}}@Value("${<%title%>.security.<%name%>.password:}")<%={{ }}=%> + @Value("${{openbrace}}{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.password:{{closebrace}}") private String {{{name}}}Password; @Bean - @ConditionalOnProperty(name = "{{{title}}}.security.{{{name}}}.username") + @ConditionalOnProperty(name = "{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.username") public BasicAuthRequestInterceptor {{{name}}}RequestInterceptor() { return new BasicAuthRequestInterceptor(this.{{{name}}}Username, this.{{{name}}}Password); } {{/isBasic}} {{#isApiKey}} - {{=<% %>=}}@Value("${<%title%>.security.<%name%>.key:}")<%={{ }}=%> + @Value("${{openbrace}}{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.key:{{closebrace}}") private String {{{name}}}Key; @Bean - @ConditionalOnProperty(name = "{{{title}}}.security.{{{name}}}.key") + @ConditionalOnProperty(name = "{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.key") public ApiKeyRequestInterceptor {{{name}}}RequestInterceptor() { return new ApiKeyRequestInterceptor({{#isKeyInHeader}}"header"{{/isKeyInHeader}}{{^isKeyInHeader}}"query"{{/isKeyInHeader}}, "{{{keyParamName}}}", this.{{{name}}}Key); } @@ -50,15 +50,15 @@ public class ClientConfiguration { {{/isApiKey}} {{#isOAuth}} @Bean - @ConditionalOnProperty("{{{title}}}.security.{{{name}}}.client-id") + @ConditionalOnProperty("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.client-id") public OAuth2FeignRequestInterceptor {{{name}}}RequestInterceptor() { return new OAuth2FeignRequestInterceptor(new DefaultOAuth2ClientContext(), {{{name}}}ResourceDetails()); } {{#isCode}} @Bean - @ConditionalOnProperty("{{{title}}}.security.{{{name}}}.client-id") - @ConfigurationProperties("{{{title}}}.security.{{{name}}}") + @ConditionalOnProperty("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.client-id") + @ConfigurationProperties("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}") public AuthorizationCodeResourceDetails {{{name}}}ResourceDetails() { AuthorizationCodeResourceDetails details = new AuthorizationCodeResourceDetails(); details.setAccessTokenUri("{{{tokenUrl}}}"); @@ -69,8 +69,8 @@ public class ClientConfiguration { {{/isCode}} {{#isPassword}} @Bean - @ConditionalOnProperty("{{{title}}}.security.{{{name}}}.client-id") - @ConfigurationProperties("{{{title}}}.security.{{{name}}}") + @ConditionalOnProperty("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.client-id") + @ConfigurationProperties("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}") public ResourceOwnerPasswordResourceDetails {{{name}}}ResourceDetails() { ResourceOwnerPasswordResourceDetails details = new ResourceOwnerPasswordResourceDetails(); details.setAccessTokenUri("{{{tokenUrl}}}"); @@ -80,8 +80,8 @@ public class ClientConfiguration { {{/isPassword}} {{#isApplication}} @Bean - @ConditionalOnProperty("{{{title}}}.security.{{{name}}}.client-id") - @ConfigurationProperties("{{{title}}}.security.{{{name}}}") + @ConditionalOnProperty("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.client-id") + @ConfigurationProperties("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}") public ClientCredentialsResourceDetails {{{name}}}ResourceDetails() { ClientCredentialsResourceDetails details = new ClientCredentialsResourceDetails(); details.setAccessTokenUri("{{{tokenUrl}}}"); @@ -91,8 +91,8 @@ public class ClientConfiguration { {{/isApplication}} {{#isImplicit}} @Bean - @ConditionalOnProperty("{{{title}}}.security.{{{name}}}.client-id") - @ConfigurationProperties("{{{title}}}.security.{{{name}}}") + @ConditionalOnProperty("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}.client-id") + @ConfigurationProperties("{{#lambda.lowercase}}{{{title}}}{{/lambda.lowercase}}.security.{{{name}}}") public ImplicitResourceDetails {{{name}}}ResourceDetails() { ImplicitResourceDetails details = new ImplicitResourceDetails(); details.setUserAuthorizationUri("{{{authorizationUrl}}}"); diff --git a/samples/client/petstore/spring-cloud/src/main/java/org/openapitools/configuration/ClientConfiguration.java b/samples/client/petstore/spring-cloud/src/main/java/org/openapitools/configuration/ClientConfiguration.java index abf7e746252..3a24985dcd2 100644 --- a/samples/client/petstore/spring-cloud/src/main/java/org/openapitools/configuration/ClientConfiguration.java +++ b/samples/client/petstore/spring-cloud/src/main/java/org/openapitools/configuration/ClientConfiguration.java @@ -22,24 +22,24 @@ import org.springframework.security.oauth2.common.exceptions.OAuth2Exception; @EnableConfigurationProperties public class ClientConfiguration { - @Value("${openAPIPetstore.security.apiKey.key:}") + @Value("${openapipetstore.security.apiKey.key:}") private String apiKeyKey; @Bean - @ConditionalOnProperty(name = "openAPIPetstore.security.apiKey.key") + @ConditionalOnProperty(name = "openapipetstore.security.apiKey.key") public ApiKeyRequestInterceptor apiKeyRequestInterceptor() { return new ApiKeyRequestInterceptor("header", "api_key", this.apiKeyKey); } @Bean - @ConditionalOnProperty("openAPIPetstore.security.petstoreAuth.client-id") + @ConditionalOnProperty("openapipetstore.security.petstoreAuth.client-id") public OAuth2FeignRequestInterceptor petstoreAuthRequestInterceptor() { return new OAuth2FeignRequestInterceptor(new DefaultOAuth2ClientContext(), petstoreAuthResourceDetails()); } @Bean - @ConditionalOnProperty("openAPIPetstore.security.petstoreAuth.client-id") - @ConfigurationProperties("openAPIPetstore.security.petstoreAuth") + @ConditionalOnProperty("openapipetstore.security.petstoreAuth.client-id") + @ConfigurationProperties("openapipetstore.security.petstoreAuth") public ImplicitResourceDetails petstoreAuthResourceDetails() { ImplicitResourceDetails details = new ImplicitResourceDetails(); details.setUserAuthorizationUri("http://petstore.swagger.io/api/oauth/dialog");