Browse Source

Improve Coroutines support consistency

pull/25892/head
Sébastien Deleuze 5 years ago
parent
commit
cdd48ddd7f
  1. 1
      spring-messaging/spring-messaging.gradle
  2. 1
      spring-webflux/spring-webflux.gradle
  3. 6
      spring-webflux/src/main/java/org/springframework/web/reactive/result/method/annotation/ControllerMethodResolver.java
  4. 8
      spring-webflux/src/test/java/org/springframework/web/reactive/result/method/annotation/ControllerMethodResolverTests.java

1
spring-messaging/spring-messaging.gradle

@ -16,7 +16,6 @@ dependencies { @@ -16,7 +16,6 @@ dependencies {
optional("javax.json.bind:javax.json.bind-api")
optional("javax.xml.bind:jaxb-api")
optional("com.google.protobuf:protobuf-java-util")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-core")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
testCompile(project(":kotlin-coroutines"))
testCompile(testFixtures(project(":spring-core")))

1
spring-webflux/spring-webflux.gradle

@ -26,7 +26,6 @@ dependencies { @@ -26,7 +26,6 @@ dependencies {
optional("org.jetbrains.kotlin:kotlin-reflect")
optional("org.jetbrains.kotlin:kotlin-stdlib")
optional("com.google.protobuf:protobuf-java-util")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-core")
optional("org.jetbrains.kotlinx:kotlinx-coroutines-reactor")
testCompile(project(":kotlin-coroutines"))
testCompile(testFixtures(project(":spring-beans")))

6
spring-webflux/src/main/java/org/springframework/web/reactive/result/method/annotation/ControllerMethodResolver.java

@ -189,9 +189,6 @@ class ControllerMethodResolver { @@ -189,9 +189,6 @@ class ControllerMethodResolver {
result.add(new RequestAttributeMethodArgumentResolver(beanFactory, adapterRegistry));
// Type-based...
if (KotlinDetector.isKotlinPresent()) {
result.add(new ContinuationHandlerMethodArgumentResolver());
}
if (!readers.isEmpty()) {
result.add(new HttpEntityMethodArgumentResolver(readers, adapterRegistry));
}
@ -205,6 +202,9 @@ class ControllerMethodResolver { @@ -205,6 +202,9 @@ class ControllerMethodResolver {
result.add(new SessionStatusMethodArgumentResolver());
}
result.add(new WebSessionMethodArgumentResolver(adapterRegistry));
if (KotlinDetector.isKotlinPresent()) {
result.add(new ContinuationHandlerMethodArgumentResolver());
}
// Custom...
result.addAll(customResolvers.getCustomResolvers());

8
spring-webflux/src/test/java/org/springframework/web/reactive/result/method/annotation/ControllerMethodResolverTests.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2019 the original author or authors.
* Copyright 2002-2020 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -105,7 +105,6 @@ public class ControllerMethodResolverTests { @@ -105,7 +105,6 @@ public class ControllerMethodResolverTests {
assertThat(next(resolvers, index).getClass()).isEqualTo(SessionAttributeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(RequestAttributeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ContinuationHandlerMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(HttpEntityMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ModelMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ErrorsMethodArgumentResolver.class);
@ -113,6 +112,7 @@ public class ControllerMethodResolverTests { @@ -113,6 +112,7 @@ public class ControllerMethodResolverTests {
assertThat(next(resolvers, index).getClass()).isEqualTo(PrincipalMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(SessionStatusMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(WebSessionMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ContinuationHandlerMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(CustomArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(CustomSyncArgumentResolver.class);
@ -144,12 +144,12 @@ public class ControllerMethodResolverTests { @@ -144,12 +144,12 @@ public class ControllerMethodResolverTests {
assertThat(next(resolvers, index).getClass()).isEqualTo(SessionAttributeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(RequestAttributeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ContinuationHandlerMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ModelMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ErrorsMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ServerWebExchangeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(PrincipalMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(WebSessionMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ContinuationHandlerMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(CustomArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(CustomSyncArgumentResolver.class);
@ -211,11 +211,11 @@ public class ControllerMethodResolverTests { @@ -211,11 +211,11 @@ public class ControllerMethodResolverTests {
assertThat(next(resolvers, index).getClass()).isEqualTo(SessionAttributeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(RequestAttributeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ContinuationHandlerMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ModelMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ServerWebExchangeMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(PrincipalMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(WebSessionMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(ContinuationHandlerMethodArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(CustomArgumentResolver.class);
assertThat(next(resolvers, index).getClass()).isEqualTo(CustomSyncArgumentResolver.class);

Loading…
Cancel
Save