Commit Graph

403 Commits

Author SHA1 Message Date
Oleg Zhurakousky
f80d0de0a3 GH-660 Add initial suppport for sending/receiving Messages
Resolves #660
2021-03-03 06:38:33 +01:00
Oleg Zhurakousky
1f818dd639 GH-654 Remove FunctionProperties injection from MessageRoutingCallbackRSocketTests 2021-02-24 13:31:31 +01:00
Oleg Zhurakousky
9d6a23f102 GH-654 Add more tests, cleanup and initial javadoc 2021-02-24 08:49:53 +01:00
Oleg Zhurakousky
9093852854 GH-654 remove route(Publisher) from MessageRoutingCallback 2021-02-23 17:26:08 +01:00
Oleg Zhurakousky
3b8b110e0a GH-654 Initial support for non-SpEL based routing mechanism 2021-02-23 06:19:45 +01:00
Oleg Zhurakousky
8a71f37a4d 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
a24713e53b GH-649 Ignire factory bean names during discovery of a function
Resolves #649
2021-02-15 17:53:12 +01:00
Oleg Zhurakousky
b96b834cdd GH-640 Fix NPE with non-Message json conversion
Resolves #640

Added test
2021-02-05 16:12:31 +01:00
Oleg Zhurakousky
b2e783490c Fix RSocket CloudEvents sample 2021-01-27 15:29:16 +01:00
Oleg Zhurakousky
41d80433e1 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
e46b685298 Stream GH-2092 Make log statement on discovery of default function more informative 2021-01-26 08:12:04 +01:00
Oleg Zhurakousky
da7f21d9e8 GH-635 Fix support for returning empty Collections
Resolves #635
2021-01-22 16:43:55 +01:00
Oleg Zhurakousky
ad1bd31ead GH-620 Add BeanResolver support for RoutingFunction
Resolves #620

polish
2021-01-22 14:52:04 +01:00
Oleg Zhurakousky
01112f4bbb Fix getItemType() in SimpleFunctionRegistry to account for Message<?> 2021-01-11 10:43:44 +01:00
ncheema
88f2d8ed11 method already has a condition to retrieve immediateGenericType for a message
This condition was meant to be removed as part of #543

Resolves #624
2021-01-11 10:43:09 +01:00
Oleg Zhurakousky
855c70538a GH-628 Clean up logging levels
Resolves #628
2021-01-11 09:51:39 +01:00
Oleg Zhurakousky
8ece3d3083 Add stream (kafka, Rabbit) and Rsocket examples for Cloud Event 2020-12-18 16:44:29 +01:00
Oleg Zhurakousky
17d5d4b727 Modify logic for header copy from input to output
This is primarily related to Cloud Events. Since we delegate to a separate class for post processing, if outpt message is Cloud Event we will not be doing anything to with regard to header copy in SimpleFunctionRegistry and unstead delegate it to CloudEventFunctionInvocationHelper
2020-12-18 16:44:19 +01:00
Oleg Zhurakousky
5e468fba73 Fix payload extraction during output conversion
Also, restructured CloudEventsFunctionInvocationHelper's postProcessig logic
2020-12-12 13:48:47 +01:00
Oleg Zhurakousky
30febe6bce Cleaned up Cloud Event support around reactive functions
Added reactive tests
Restructured CloudEventsFunctionInvocationHelper
2020-12-11 14:34:32 +01:00
Oleg Zhurakousky
096df2f22c SCST-2065 Fix deserialization error when multi IO signature
Fix deserializatioin error when using complex signatures such as Function<Tuple2<Flux<Message<String>>
The issue originated from spring cloud stream https://github.com/spring-cloud/spring-cloud-stream/issues/2065
2020-12-10 15:53:05 +01:00
Oleg Zhurakousky
066b154508 interim 2020-12-10 07:56:15 +01:00
Oleg Zhurakousky
6b03cf7a1e Polish previous commit
Add FunctionInspector dependency back to SimpleFunctionRegistry since we can't remove it yet to avoid backward comatibility issues

Resolves #617
2020-12-08 18:44:16 +01:00
Mingyuan Wu
b4f193fd3c Disconnect FunctionInspector from AbstractComposableFunctionRegistry and SimpleFunctionRegistry 2020-12-08 17:31:56 +01:00
Oleg Zhurakousky
5299de10c3 Minor improvements and clean up Cloud Event package 2020-12-03 20:31:17 +01:00
Oleg Zhurakousky
119a688388 Consolidate Cloud Events attribute prefix swap logic 2020-12-02 18:56:51 +01:00
Oleg Zhurakousky
aede56dfc6 Fix Cloud Events support for Message functions
Ensured Cloud Event completness by adding assertion for required attributes as well as generation of default values for attributes such as ID and SPECVERSION
2020-12-02 18:22:17 +01:00
Oleg Zhurakousky
923d5204e4 Tidy up logic around canonicalization of attributes
Added initial test to validate builder and utils
2020-12-02 15:17:17 +01:00
Oleg Zhurakousky
753d6369a2 interim 2020-12-02 13:10:05 +01:00
Oleg Zhurakousky
91b343aa0f interim 2020-12-02 12:45:45 +01:00
Oleg Zhurakousky
523cd1023f Change canonical format of Cloud Event Message attributes to have 'ce-' prefix 2020-12-02 11:24:03 +01:00
Oleg Zhurakousky
0cdcc46f57 Minor cleanup and javadocs 2020-12-02 09:20:50 +01:00
Oleg Zhurakousky
306da4248a Restructure Cloud Events support to optionally support Cloud Events SDK 2020-12-01 22:12:34 +01:00
Oleg Zhurakousky
70fbcec586 Revert "Add a new strategy for header enrichment"
This reverts commit 6852d674e1.
2020-11-30 15:23:42 +01:00
Dave Syer
6852d674e1 Add a new strategy for header enrichment
There was a TODO in the cloud events section of the function catalog.
This extracts that into a strategy and autoconfigures it:
CloudEventOutputMessageHeaderEnricher.
2020-11-25 16:07:14 +00:00
Oleg Zhurakousky
e2788fbab0 GH-611 Add test to ensure there is no regression
Resolves #611
2020-11-23 20:25:18 +01:00
Oleg Zhurakousky
e4242388fb GH-609 Fix support for missmatched Publishers
Given that s-c-f-web always sends input as Flux, it creates issues for Function<Mono, Mono>, so this fixes it
Resolves #609
2020-11-20 12:13:52 +01:00
Oleg Zhurakousky
e112b6c9dc GH-608 Add test to validate there is no regression
Resolves #608
2020-11-20 11:27:03 +01:00
Dave Syer
abfe1b648c Move @Autowired field to lazy init method 2020-11-20 09:56:03 +00:00
Oleg Zhurakousky
cd2d84d382 Fix spelling errors in method name 2020-11-17 16:54:29 +01:00
Oleg Zhurakousky
462e9f0855 Minor cleanup 2020-11-17 10:47:45 +01:00
Oleg Zhurakousky
1187c04dde Add AMQP prefix recognition to CloudEventMessageUtils 2020-11-17 10:00:23 +01:00
Oleg Zhurakousky
53addc50c8 Add additional Cloud Event function test 2020-11-17 08:58:53 +01:00
Oleg Zhurakousky
0a413331e8 Polishing cleanup and javadoc 2020-11-17 08:01:21 +01:00
Oleg Zhurakousky
f249f28383 Improve and add javadocs
Related to GH-422 and GH-606
2020-11-16 19:15:39 +01:00
Oleg Zhurakousky
2aa92a72a1 GH-422, GH-606 Fis structure mode attribute generation 2020-11-16 17:44:07 +01:00
Oleg Zhurakousky
24ef2747ba GH-422, GH-606 Improve generation of default attributes for Consumer 2020-11-16 16:49:59 +01:00
Oleg Zhurakousky
ee3868debd GH-422, GH-606 Add support for generating attributes using provider in Consumer 2020-11-16 16:27:54 +01:00
Oleg Zhurakousky
6093aefe14 GH-422, GH-606 Fix attributes generatioin 2020-11-16 14:20:02 +01:00
Oleg Zhurakousky
ac54a83e09 Clean up and simplifications around CloudEvent processing
This commit effectively a merge of work with #607 and simplifies the following
- CloudEventAttributesProvider now provides CloudEventAttributes initialized with defaults to be set by the user
- In HTTP RequestProcessor the logic of sanitizing headers was improved to ensure that correct prefix is applied

Resolves #607
2020-11-16 13:40:53 +01:00