Browse Source

Remove Java code dependency on CoWebFilter

To avoid compilation errors in Eclipse which does
not support Java code dependency on Kotlin code.

See gh-27522
pull/31226/head
Sébastien Deleuze 1 year ago
parent
commit
abb296c7d2
  1. 6
      spring-webflux/src/main/java/org/springframework/web/reactive/result/method/InvocableHandlerMethod.java

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

@ -49,7 +49,6 @@ import org.springframework.validation.method.MethodValidator; @@ -49,7 +49,6 @@ import org.springframework.validation.method.MethodValidator;
import org.springframework.web.method.HandlerMethod;
import org.springframework.web.reactive.BindingContext;
import org.springframework.web.reactive.HandlerResult;
import org.springframework.web.server.CoWebFilter;
import org.springframework.web.server.ServerWebExchange;
/**
@ -292,13 +291,16 @@ public class InvocableHandlerMethod extends HandlerMethod { @@ -292,13 +291,16 @@ public class InvocableHandlerMethod extends HandlerMethod {
*/
private static class KotlinDelegate {
// Copy of CoWebFilter.COROUTINE_CONTEXT_ATTRIBUTE value to avoid compilation errors in Eclipse
private static final String COROUTINE_CONTEXT_ATTRIBUTE = "org.springframework.web.server.CoWebFilter.context";
@Nullable
@SuppressWarnings("deprecation")
public static Object invokeFunction(Method method, Object target, Object[] args, boolean isSuspendingFunction,
ServerWebExchange exchange) {
if (isSuspendingFunction) {
Object coroutineContext = exchange.getAttribute(CoWebFilter.COROUTINE_CONTEXT_ATTRIBUTE);
Object coroutineContext = exchange.getAttribute(COROUTINE_CONTEXT_ATTRIBUTE);
if (coroutineContext == null) {
return CoroutinesUtils.invokeSuspendingFunction(method, target, args);
}

Loading…
Cancel
Save