Commit Graph

1232 Commits

Author SHA1 Message Date
Oleg Zhurakousky
ebc7bbd692 Update copyrights 2021-03-02 08:51:22 +01:00
Adrien Poupard
e30a091f82 Add Kotlin suspend function support
Use suspendCoroutineUninterceptedOrReturn to avoid using not fully implemented Function2.reflect()

Mapping of Function, Consumer and Supplier to kotlin suspend flow lambda

Fix MR review

Resolves #655
2021-03-02 08:51:00 +01:00
Oleg Zhurakousky
3c16efc6a4 GH-654 Update routing and RSocket routing documentation with details on 'MessageRoutingCallback'
Resolves #654
2021-02-24 15:48:34 +01:00
Oleg Zhurakousky
1f43bbce28 GH-654 Remove FunctionProperties injection from MessageRoutingCallbackRSocketTests 2021-02-24 13:31:31 +01:00
Oleg Zhurakousky
410d494467 GH-654 Add more tests, cleanup and initial javadoc 2021-02-24 08:49:53 +01:00
Oleg Zhurakousky
a838f31be6 GH-654 remove route(Publisher) from MessageRoutingCallback 2021-02-23 17:26:08 +01:00
Oleg Zhurakousky
26c11b4463 GH-654 Fix how RoutingFunction is treated by RSocketListenerFunction 2021-02-23 16:58:37 +01:00
Oleg Zhurakousky
29115aeb64 GH-654 Initial support for non-SpEL based routing mechanism 2021-02-23 06:19:45 +01:00
Oleg Zhurakousky
c01b25f2fa SCST-GH-2115 Ensure that in a case of KafkaNull we just return a payload 2021-02-22 16:10:05 +01:00
Oleg Zhurakousky
71c0d6d71e Fix spelling error in constant name 2021-02-22 14:11:27 +01:00
Oleg Zhurakousky
3821e5745c GH-653 Retain original 'lookupDestination' while adding 'reconsiledLookupDestination'
This is necessary to retain user provided information while also prpviding a way to reconsile the actual destination/function
2021-02-22 14:08:02 +01:00
Oleg Zhurakousky
0abce5a2b8 GH-652 Improve error messaging and function exist check
FunctionRSocketUtils looks up function by a bean name hen it attempts  to determine if there is a remote routing. That is not correct since bean name may not exist if function was manually registered. Also, the error message 'Must only contain one output redirect' was not clear as it was not showing the actual function name for propper debugging

Resolves #651
2021-02-22 12:19:57 +01:00
Oleg Zhurakousky
54eedc6713 GH-653 Add documentation and additional test to validate function definition order for RSocket
Resolves #653
2021-02-22 11:41:06 +01:00
Oleg Zhurakousky
57776c6b0c GH-653 Make consistent priority order of function definition in RSocket
With this commit spring.cloud.function.routing-expression property takes precedence over all, then route(<function.definition>) and then spring.cloud.function.definition property
2021-02-22 11:11:55 +01:00
buildmaster
1f2c3d8017 Bumping versions 2021-02-18 18:56:53 +00:00
Oleg Zhurakousky
7c216847b2 Simplified RoutingFunction configuration
If routing-expression is provided there is no need to explicitely set function.definition to 'functionRouter'
2021-02-18 15:35:26 +01:00
Oleg Zhurakousky
81d6998635 Add initial RSocket test with RoutingFunction 2021-02-18 14:42:14 +01:00
buildmaster
286a6c0a07 Bumping versions 2021-02-15 18:56:40 +00:00
Oleg Zhurakousky
16dacb750f GH-645 Add Kotlin Web example 2021-02-15 18:06:40 +01:00
Oleg Zhurakousky
73bd787c8d GH-649 Ignire factory bean names during discovery of a function
Resolves #649
2021-02-15 17:53:12 +01:00
Oleg Zhurakousky
9b62f6e3f8 GH-648 Fix Kotlin functions bootstrap
Resolves #648
2021-02-15 16:12:12 +01:00
Oleg Zhurakousky
1453957a26 Upgrade Kotlin lib 2021-02-11 05:35:52 +01:00
Oleg Zhurakousky
5485cc33ca GH-639 Fix NPE for when using Supplier with AWS API Gateway
Resolves #639
2021-02-08 10:36:00 +01:00
Oleg Zhurakousky
c4dfffe0ba GH-640 Fix NPE with non-Message json conversion
Resolves #640

Added test
2021-02-05 16:12:31 +01:00
buildmaster
315ed4612d Bumping versions 2021-02-01 18:56:47 +00:00
Oleg Zhurakousky
b9d3681edd GH-638 Enhance the lifecycle of function deployemnt in s-c-f-deployer
Resolves #638
2021-02-01 13:35:59 +01:00
buildmaster
aa01b6ab33 Bumping versions 2021-01-28 18:56:43 +00:00
buildmaster
06872f573a Bumping versions 2021-01-27 18:56:44 +00:00
buildmaster
043668db4b Bumping versions to 3.1.2-SNAPSHOT after release 2021-01-27 17:16:38 +00:00
buildmaster
0b8d00b1df Going back to snapshots 2021-01-27 17:16:37 +00:00
buildmaster
ea03395bb3 Update SNAPSHOT to 3.1.1 2021-01-27 17:11:29 +00:00
Oleg Zhurakousky
a6cb0fde3c Fix RSocket CloudEvents sample 2021-01-27 15:29:16 +01:00
Oleg Zhurakousky
2a356812ac GH-632 Fix type discovery on Kotlin function
Fix the way FunctionTypeUtils deals with Kotllin function when it attempts to discover their type.
Basically it checks if function-name + '_registration' nean exists and if so it skip discovery and uses the types available in FunctionRegistration which for Kotlin scenarios will always exist.

Resolves #632
2021-01-26 12:04:05 +01:00
Oleg Zhurakousky
ed99439f0b GH-552 Fix Consumer support in FunctionInvoker
Further refactor FunctionInvoker to utilize functionality of AWSLambdaUtils
Add Consumer test

Resolves #552
2021-01-26 10:41:25 +01:00
Oleg Zhurakousky
5e4b4a63b8 Merge pull request #637 from timmyowl/patch-1
Update FunctionConfiguration.java
2021-01-26 08:13:23 +01:00
Oleg Zhurakousky
0e6260942b Stream GH-2092 Make log statement on discovery of default function more informative 2021-01-26 08:12:04 +01:00
Owolabi Timothy
2b77ec9c94 Update FunctionConfiguration.java
Updated typo in comment
2021-01-26 06:18:33 +01:00
Oleg Zhurakousky
fcc5788223 GH-636 Add documentation to explain function filtering
Resolves #636
2021-01-25 15:51:14 +01:00
Oleg Zhurakousky
fbc2ca815a GH-635 Fix support for returning empty Collections
Resolves #635
2021-01-22 16:43:55 +01:00
Oleg Zhurakousky
3d4bd14926 GH-620 Add BeanResolver support for RoutingFunction
Resolves #620

polish
2021-01-22 14:52:04 +01:00
Oleg Zhurakousky
75112076f7 GH-630, GH-530 Additional improvements in AWS Custom Runtime
Ensured we have Custom Runtime examples for functional and '@Bean' style
Improve AWSLambdaUtils to ensure it works without APIGatewayProxyRequestEvent on classpath
2021-01-22 12:31:31 +01:00
Oleg Zhurakousky
a1d10f0771 GH-530, GH-630 Improvements to AWS Custom Runtime
This commit provides initial set of improvements to executing functions in AWS Custom Runtime
- Consistent invocation model for functional as well as @Bean configuration models via new CustomRuntimeEventLoop as well as AWSLambdaUtils
- Clean up classpath to decrease the size of the JAR/ZIP file
- Configuration simplification which no longer requires enabling of function exporter

It also allows user to define functions that rely on AWS types such as APIGatewayProxyRequestEvent

The existing invocation model remains in tact for the time being. Both invocation models are mutually exclusing in theit setup to avoid potential conflict.

Resolves #538
Resolves #630
2021-01-21 22:20:32 +01:00
buildmaster
175c819ae9 Bumping versions 2021-01-14 18:56:56 +00:00
Oleg Zhurakousky
b28087d6a3 Revert "Bumping versions"
This reverts commit cbd0bee65f.
2021-01-14 12:36:38 +01:00
buildmaster
cbd0bee65f Bumping versions 2021-01-13 18:56:32 +00:00
Oleg Zhurakousky
723f780208 Added author name to the docs
Resolves #627
Resolves #621
2021-01-11 11:00:04 +01:00
Dan Dobrin
e566705542 Fixes #621 - updated Documentation, test and sample code 2021-01-11 10:52:58 +01:00
Oleg Zhurakousky
5894433ed5 Revert "Bumping versions"
This reverts commit 6a3bde7d64.
2021-01-11 10:44:04 +01:00
Oleg Zhurakousky
21ac246d61 Revert "Bumping versions"
This reverts commit 8cfa04ccc6.
2021-01-11 10:43:52 +01:00
Oleg Zhurakousky
d9a0add8b8 Fix getItemType() in SimpleFunctionRegistry to account for Message<?> 2021-01-11 10:43:44 +01:00