Skip to content

Commit 498a52e

Browse files
committed
GH-661 Fix KafkaNull as input type conversion
Basically KafkaNull gets a special treatement where if we see it as Message payload and input type of the function is Message we give it as is and if the input type is POJO then we simply return null Resolves #661
1 parent c8a0ceb commit 498a52e

File tree

1 file changed

+2
-3
lines changed

1 file changed

+2
-3
lines changed

Diff for: spring-cloud-function-context/src/main/java/org/springframework/cloud/function/context/catalog/SimpleFunctionRegistry.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -853,9 +853,8 @@ else if (this.skipInputConversion) {
853853
: new OriginalMessageHolder(((Message) input).getPayload(), (Message<?>) input);
854854
}
855855
else if (input instanceof Message) {
856-
if (((Message) input).getPayload().getClass().getName().equals("org.springframework.kafka.support.KafkaNull")
857-
&& !this.isInputTypeMessage()) { //TODO rework
858-
return ((Message) input).getPayload();
856+
if (((Message) input).getPayload().getClass().getName().equals("org.springframework.kafka.support.KafkaNull")) {
857+
return FunctionTypeUtils.isMessage(type) ? input : null;
859858
}
860859

861860
if (functionInvocationHelper != null) {

0 commit comments

Comments
 (0)