Skip to content

Commit e5ac610

Browse files
authored
GH-10083: Apply Nullability to GraphQL module (#10260)
Related to: #10083 * Add `@SuppressWarnings("NullAway")` to the function where we get a message id, which technically is never null in Spring Integration
1 parent c4e2cee commit e5ac610

File tree

3 files changed

+10
-15
lines changed

3 files changed

+10
-15
lines changed
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
/**
22
* Provides classes for Java DSL to support GraphQL components.
33
*/
4-
@org.springframework.lang.NonNullApi
5-
@org.springframework.lang.NonNullFields
4+
@org.jspecify.annotations.NullMarked
65
package org.springframework.integration.graphql.dsl;

spring-integration-graphql/src/main/java/org/springframework/integration/graphql/outbound/GraphQlMessageHandler.java

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import java.util.Locale;
2020
import java.util.Map;
2121

22+
import org.jspecify.annotations.Nullable;
23+
2224
import org.springframework.beans.factory.BeanFactory;
2325
import org.springframework.expression.Expression;
2426
import org.springframework.expression.common.LiteralExpression;
@@ -30,7 +32,6 @@
3032
import org.springframework.integration.expression.FunctionExpression;
3133
import org.springframework.integration.expression.SupplierExpression;
3234
import org.springframework.integration.handler.AbstractReplyProducingMessageHandler;
33-
import org.springframework.lang.Nullable;
3435
import org.springframework.messaging.Message;
3536
import org.springframework.util.Assert;
3637

@@ -49,16 +50,15 @@ public class GraphQlMessageHandler extends AbstractReplyProducingMessageHandler
4950

5051
private StandardEvaluationContext evaluationContext = new StandardEvaluationContext();
5152

52-
@Nullable
53-
private Expression operationExpression;
53+
private @Nullable Expression operationExpression;
5454

5555
private Expression operationNameExpression = new SupplierExpression<>(() -> null);
5656

5757
private Expression variablesExpression = new SupplierExpression<>(() -> null);
5858

59-
@Nullable
60-
private Locale locale;
59+
private @Nullable Locale locale;
6160

61+
@SuppressWarnings("NullAway") // In most cases the message really comes with an ID
6262
private Expression executionIdExpression =
6363
new FunctionExpression<Message<?>>(message -> message.getHeaders().getId());
6464

@@ -163,19 +163,16 @@ private String evaluateOperationExpression(Message<?> message) {
163163
return operation;
164164
}
165165

166-
@Nullable
167-
private String evaluateOperationNameExpression(Message<?> message) {
166+
private @Nullable String evaluateOperationNameExpression(Message<?> message) {
168167
return this.operationNameExpression.getValue(this.evaluationContext, message, String.class);
169168
}
170169

171-
@Nullable
172170
@SuppressWarnings("unchecked")
173-
private Map<String, Object> evaluateVariablesExpression(Message<?> message) {
171+
private @Nullable Map<String, Object> evaluateVariablesExpression(Message<?> message) {
174172
return this.variablesExpression.getValue(this.evaluationContext, message, Map.class);
175173
}
176174

177-
@Nullable
178-
private String evaluateExecutionIdExpression(Message<?> message) {
175+
private @Nullable String evaluateExecutionIdExpression(Message<?> message) {
179176
return this.executionIdExpression.getValue(this.evaluationContext, message, String.class);
180177
}
181178

Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
/**
22
* Provides classes for GraphQL outbound channel adapters.
33
*/
4-
@org.springframework.lang.NonNullApi
5-
@org.springframework.lang.NonNullFields
4+
@org.jspecify.annotations.NullMarked
65
package org.springframework.integration.graphql.outbound;

0 commit comments

Comments
 (0)