GH-550 Add support for wrapping value into Message if necessary

Resolves #550
This commit is contained in:
Oleg Zhurakousky
2020-06-19 15:26:28 +02:00
parent 62e8132fce
commit 98fd8ca9cd
3 changed files with 39 additions and 1 deletions

View File

@@ -761,6 +761,10 @@ public class SimpleFunctionRegistry implements FunctionRegistry, FunctionInspect
if (rawType instanceof ParameterizedType) {
rawType = ((ParameterizedType) rawType).getRawType();
}
if (value != null && !(value instanceof Message) && FunctionTypeUtils.isMessage(type)) {
value = new GenericMessage<>(value);
convertedValue = value;
}
if (value instanceof Message<?>) { // see AWS adapter with Optional payload
if (messageNeedsConversion(rawType, (Message<?>) value)) {
convertedValue = FunctionTypeUtils.isTypeCollection(type)