Skip to content

Commit 67d070c

Browse files
authored
Fix set invoker package for kotlin (#1625)
1 parent d4aa844 commit 67d070c

File tree

14 files changed

+40
-45
lines changed

14 files changed

+40
-45
lines changed

openapi-generator/src/main/java/io/micronaut/openapi/generator/AbstractMicronautKotlinCodegen.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@
7979
import static org.openapitools.codegen.CodegenConstants.API_PACKAGE;
8080
import static org.openapitools.codegen.CodegenConstants.INVOKER_PACKAGE;
8181
import static org.openapitools.codegen.CodegenConstants.MODEL_PACKAGE;
82+
import static org.openapitools.codegen.CodegenConstants.PACKAGE_NAME;
8283
import static org.openapitools.codegen.languages.KotlinClientCodegen.DATE_LIBRARY;
8384
import static org.openapitools.codegen.utils.StringUtils.camelize;
8485
import static org.openapitools.codegen.utils.StringUtils.underscore;
@@ -245,6 +246,7 @@ protected AbstractMicronautKotlinCodegen() {
245246

246247
// Set client options that will be presented to user
247248
updateOption(INVOKER_PACKAGE, packageName);
249+
updateOption(PACKAGE_NAME, packageName);
248250
updateOption(CodegenConstants.ARTIFACT_ID, artifactId);
249251
updateOption(CodegenConstants.API_PACKAGE, apiPackage);
250252
updateOption(CodegenConstants.MODEL_PACKAGE, modelPackage);
@@ -391,8 +393,10 @@ public void setApiPackage(String apiPackage) {
391393
updateOption(CodegenConstants.API_PACKAGE, apiPackage);
392394
}
393395

394-
public void setInvokerPackage(String packageName) {
396+
public void setPackageName(String packageName) {
397+
super.setPackageName(packageName);
395398
updateOption(INVOKER_PACKAGE, packageName);
399+
updateOption(PACKAGE_NAME, packageName);
396400
}
397401

398402
public void setPlural(boolean plural) {

openapi-generator/src/main/java/io/micronaut/openapi/generator/MicronautCodeGeneratorEntryPoint.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ private void configureOptions() {
196196
} else if (options.lang == GeneratorLanguage.KOTLIN && codeGenerator instanceof AbstractMicronautKotlinCodegen<?> kotlinCodeGen) {
197197

198198
if (options.invokerPackage != null) {
199-
kotlinCodeGen.setInvokerPackage(options.invokerPackage);
199+
kotlinCodeGen.setPackageName(options.invokerPackage);
200200
}
201201
if (options.artifactId != null) {
202202
kotlinCodeGen.setArtifactId(options.artifactId);

openapi-generator/src/main/resources/templates/java-micronaut/client/auth/AuthorizationBinder.mustache

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ public class AuthorizationBinder implements AnnotatedClientRequestBinder<Authori
4040
.getAnnotationValuesByType(Authorization.class);
4141
4242
if (CollectionUtils.isNotEmpty(annotations)) {
43-
List<String> authorizationNames = new ArrayList<>();
43+
var authorizationNames = new ArrayList<String>();
4444
for (AnnotationValue<Authorization> annotation : annotations) {
45-
annotation.get("name", String.class)
45+
annotation.stringValue("name")
4646
.filter(StringUtils::isNotEmpty)
4747
.ifPresent(v -> authorizationNames.add(configurationName(v)));
4848
}

openapi-generator/src/main/resources/templates/kotlin-micronaut/client/auth/AuthorizationBinder.mustache

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ open class AuthorizationBinder : AnnotatedClientRequestBinder<Authorization> {
3434
if (annotations.isNotEmpty()) {
3535
val authorizationNames = ArrayList<String>()
3636
for (ann in annotations) {
37-
ann.get("name", String::class.java)
38-
.filter{ s -> !s.isNullOrEmpty()}
39-
.ifPresent {v -> authorizationNames.add(configurationName(v))}
37+
ann.stringValue("name")
38+
.filter{ s -> !s.isNullOrEmpty() }
39+
.ifPresent { v -> authorizationNames.add(configurationName(v)) }
4040
}
4141
request.setAttribute(AUTHORIZATION_NAMES, authorizationNames)
4242
}

openapi-generator/src/main/resources/templates/kotlin-micronaut/client/auth/AuthorizationFilter.mustache

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import io.micronaut.http.filter.ClientFilterChain
1212
import io.micronaut.http.filter.HttpClientFilter
1313
import io.micronaut.inject.qualifiers.Qualifiers
1414
import io.micronaut.security.oauth2.client.clientcredentials.ClientCredentialsClient
15-
import io.micronaut.security.oauth2.client.clientcredentials.ClientCredentialsConfiguration
1615
import io.micronaut.security.oauth2.client.clientcredentials.propagation.ClientCredentialsHttpClientFilter
1716
import io.micronaut.security.oauth2.client.clientcredentials.propagation.ClientCredentialsTokenPropagator
1817
import io.micronaut.security.oauth2.configuration.OauthClientConfiguration
@@ -32,7 +31,7 @@ import {{javaxPackage}}.annotation.Generated
3231
{{/generatedAnnotation}}
3332
@Filter({{#configureAuthFilterPattern}}"{{authorizationFilterPattern}}"{{/configureAuthFilterPattern}}{{^configureAuthFilterPattern}}Filter.MATCH_ALL_PATTERN{{/configureAuthFilterPattern}})
3433
open class AuthorizationFilter(
35-
defaultTokenPropagator: ClientCredentialsTokenPropagator,
34+
var defaultTokenPropagator: ClientCredentialsTokenPropagator?,
3635
clientConfigurations: Stream<OauthClientConfiguration>,
3736
configurableAuthorizations: Stream<ConfigurableAuthorization>,
3837
private val beanContext: BeanContext,
@@ -46,12 +45,12 @@ open class AuthorizationFilter(
4645
4746
init {
4847
clientConfigurationByName = clientConfigurations
49-
.filter { obj: OauthClientConfiguration -> obj.isEnabled }
50-
.collect(Collectors.toMap({ obj: OauthClientConfiguration -> obj.name }, { v: OauthClientConfiguration? -> v }))
48+
.filter { it.isEnabled }
49+
.collect(Collectors.toMap({ it.name }, { it }))
5150
tokenPropagatorByName = HashMap()
5251
clientCredentialsClientByName = HashMap()
5352
authorizationsByName = configurableAuthorizations
54-
.collect(Collectors.toMap({ obj: ConfigurableAuthorization -> obj.getName() }, { v: ConfigurableAuthorization? -> v }))
53+
.collect(Collectors.toMap({ it.name }, { it }))
5554
}
5655

5756
override fun doFilter(request: @NonNull MutableHttpRequest<*>, chain: @NonNull ClientFilterChain): Publisher<out HttpResponse<*>?> {
@@ -124,7 +123,7 @@ open class AuthorizationFilter(
124123

125124
protected fun getScope(oauthClient: @NonNull OauthClientConfiguration): @Nullable String? {
126125
return oauthClient.clientCredentials
127-
.flatMap { obj: ClientCredentialsConfiguration -> obj.scope }
126+
.flatMap { it.scope }
128127
.orElse(null)
129128
}
130129

openapi-generator/src/main/resources/templates/kotlin-micronaut/client/auth/configuration/ApiKeyAuthConfiguration.mustache

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@ import {{javaxPackage}}.annotation.Generated
1616
{{/generatedAnnotation}}
1717
@EachProperty("security.api-key-auth")
1818
data class ApiKeyAuthConfiguration(
19-
@Parameter val name: String,
19+
@Parameter override val name: String,
2020
@NonNull var location: AuthKeyLocation,
2121
@NonNull var paramName: String,
2222
@NonNull var apiKey: String
23-
): ConfigurableAuthorization {
23+
) : ConfigurableAuthorization {
2424
2525
override fun applyAuthorization(@NonNull request: MutableHttpRequest<*>) {
2626
when (location) {
@@ -36,8 +36,6 @@ data class ApiKeyAuthConfiguration(
3636
}
3737
}
3838

39-
override fun getName() = name
40-
4139
enum class AuthKeyLocation {
4240
HEADER,
4341
QUERY,

openapi-generator/src/main/resources/templates/kotlin-micronaut/client/auth/configuration/ConfigurableAuthorization.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import {{javaxPackage}}.annotation.Generated
1212
{{/generatedAnnotation}}
1313
interface ConfigurableAuthorization {
1414
15-
fun getName(): String
15+
val name: String
1616
1717
fun applyAuthorization(@NonNull request: MutableHttpRequest<*>)
1818
}

openapi-generator/src/main/resources/templates/kotlin-micronaut/client/auth/configuration/HttpBasicAuthConfiguration.mustache

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,12 @@ import {{javaxPackage}}.annotation.Generated
1515
{{/generatedAnnotation}}
1616
@EachProperty("security.basic-auth")
1717
data class HttpBasicAuthConfiguration(
18-
@Parameter val name: String,
18+
@Parameter override val name: String,
1919
@NonNull var username: String,
2020
@NonNull var password: String
2121
) : ConfigurableAuthorization {
2222
2323
override fun applyAuthorization(@NonNull request: MutableHttpRequest<*>) {
2424
request.basicAuth(username, password)
2525
}
26-
27-
override fun getName() = name
2826
}

test-suite-kotlin-kapt-server-generator/src/main/kotlin/io/micronaut/openapi/test/dated/DatedResponseBodyWriter.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ internal class DatedResponseBodyWriter<T> private constructor(
3434
override fun createSpecific(
3535
type: Argument<DatedResponse<T>>
3636
): MessageBodyWriter<DatedResponse<T>> {
37-
val bt: Argument<T> = type.typeParameters[0] as Argument<T>
37+
val bt = type.typeParameters[0] as Argument<T>
3838
val writer = registry.findWriter(bt, listOf(MediaType.APPLICATION_JSON_TYPE))
3939
.orElseThrow { ConfigurationException("No JSON message writer present") }
4040
return DatedResponseBodyWriter(registry, writer, bt)

test-suite-kotlin-kapt-server-generator/src/main/kotlin/io/micronaut/openapi/test/filter/MyFilter.kt

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ import java.util.regex.Pattern
1212
* @param conditions The filtering conditions
1313
*/
1414
data class MyFilter(
15-
val conditions: List<Condition>
15+
val conditions: List<Condition>
1616
) {
1717

18-
override fun toString(): String = conditions.joinToString( ",", transform = { it.toString() })
18+
override fun toString() = conditions.joinToString(",", transform = { it.toString() })
1919

2020
/**
2121
* A filtering condition.
@@ -30,9 +30,7 @@ data class MyFilter(
3030
val value: Any,
3131
) {
3232

33-
override fun toString(): String {
34-
return propertyName + comparator + value
35-
}
33+
override fun toString() = propertyName + comparator + value
3634

3735
companion object {
3836
/**
@@ -48,9 +46,9 @@ data class MyFilter(
4846
throw ParseException("The filter condition must match '$CONDITION_REGEX' but is '$string'")
4947
}
5048
return Condition(
51-
matcher.group(1),
52-
ConditionComparator.parse(matcher.group(2)),
53-
matcher.group(3)
49+
matcher.group(1),
50+
ConditionComparator.parse(matcher.group(2)),
51+
matcher.group(3)
5452
)
5553
}
5654
}
@@ -98,6 +96,7 @@ data class MyFilter(
9896

9997
companion object {
10098
private const val CONDITION_REGEX = "^(.+)([<>=])(.+)$"
99+
101100
/**
102101
* An implementation with no filtering.
103102
*/
@@ -116,8 +115,7 @@ data class MyFilter(
116115
return EMPTY
117116
}
118117
val conditions = value.split(",")
119-
.map { Condition.parse(it) }
120-
.toList()
118+
.map { Condition.parse(it) }
121119
return MyFilter(conditions)
122120
}
123121
}

0 commit comments

Comments
 (0)