Oleg Zhurakousky
bc6ca20116
Fix previous commit's byte[] handling
2021-09-23 16:04:00 +02:00
Oleg Zhurakousky
e6fd2d0d02
Fix handling of byte[] in MessageAwareJsonDecoder
2021-09-23 14:55:18 +02:00
Oleg Zhurakousky
d7ef882ca5
GH-745 Ensure RSocket support is ready to receive non-Message
2021-09-22 17:24:37 +02:00
Oleg Zhurakousky
6aafea1537
GH-745 Fix conversion issue with json Strings and byte[]
...
Resolves #745
2021-09-22 12:11:00 +02:00
Oleg Zhurakousky
be0b715e45
Split RSocket configuration from RSocketStrategiesCustomizer
2021-09-08 17:29:33 +02:00
Oleg Zhurakousky
3666bf73f7
GH-709, GH-684, GH-641 Upgrade AWS dependency
...
Refactor and simplify AWSLambdaUtils to work with AWS serialization libraries
Add support for API v2 gateway event
Resolves #709
Resolves #684
Resolves #641
2021-07-22 18:57:57 +02:00
Oleg Zhurakousky
1e42e82063
Minor simplification in FunctionRSocketMessageHandler
2021-03-17 14:58:35 +01:00
Oleg Zhurakousky
835f3cc723
RSocket - Add Cbor test, fixed consumer test and minor cleanup
...
polish
2021-03-16 20:53:48 +01:00
Oleg Zhurakousky
39fa045880
GH-667 Ensure delegation to other available argument resolvers
...
In RSocket module we provide custom argument resolver that is aware of how to create a Message if incoming data is application/json
However in the event it's anything else, this fix ensures that there is a delegation model to give other argument resolvers a chance
Resolves #667
2021-03-16 13:00:37 +01:00
Oleg Zhurakousky
70744bb976
Fix encoder/decoder to return decodableMimeTypes
...
This effectively fixes the Cbor exclusiion
2021-03-15 12:23:27 +01:00
Oleg Zhurakousky
778672e6ea
Add test assertions to validate header propagation for rsocket message
2021-03-10 15:38:13 +01:00
Oleg Zhurakousky
3255ae7455
Fix header propagation for rsocket message
2021-03-10 15:25:50 +01:00
Oleg Zhurakousky
73164beb68
Fix checkstyle
2021-03-10 06:51:01 +01:00
Oleg Zhurakousky
6f90410dda
Remove dependency on web classes from new Encoder/Decoder implementation
...
The web dependency still need to be there since it appears that spring-rsocket requires it
2021-03-05 15:08:25 +01:00
Oleg Zhurakousky
e4cdd9b7a4
Cleanup 'handleAndReply' logic in RSocketListenerFunction
2021-03-05 09:51:59 +01:00
Oleg Zhurakousky
1ba0315460
Fix Message sanitizing logic in FunctionRSocketUtils
...
Only sanitize headers that are not serializable
2021-03-05 08:43:19 +01:00
Oleg Zhurakousky
e5c7452933
GH-663 Fix how strtategies are used to register additional encoders/decoders
...
Resolves #663
2021-03-05 08:08:16 +01:00
Oleg Zhurakousky
694d831adf
GH-660 Add initial suppport for sending/receiving Messages
...
Resolves #660
2021-03-03 06:38:33 +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
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
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
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
Oleg Zhurakousky
a6cb0fde3c
Fix RSocket CloudEvents sample
2021-01-27 15:29:16 +01:00
Oleg Zhurakousky
ab59776fb5
GH-590 Add initial RSocket documentation
2020-12-21 10:26:55 +01:00
Oleg Zhurakousky
bc4b5b3f80
Add stream (kafka, Rabbit) and Rsocket examples for Cloud Event
2020-12-18 16:44:29 +01:00
Oleg Zhurakousky
e58643c032
Clean up FunctionTypeUtils
2020-10-19 14:44:37 +02:00
Oleg Zhurakousky
89466b5cdc
Refactor FunctionCatalog implementation
2020-10-16 17:59:06 +02:00
Oleg Zhurakousky
3b26ca1282
Revert "Temporarily disable rsocket-routing-broker integration"
...
This reverts commit c3d6b48e92 .
2020-09-23 17:12:46 +02:00
Oleg Zhurakousky
c3d6b48e92
Temporarily disable rsocket-routing-broker integration
2020-09-23 16:24:01 +02:00
Oleg Zhurakousky
6c6f98fa1d
Re-enable routing broker tests after fixes in routing broker
2020-09-17 11:43:54 +02:00
Oleg Zhurakousky
d3afd1fea4
GH-587 Add support for inferring 'accept' content type for simple types
...
This fix also introduces new Function property 'accept' with no default value which implicitely would default to application/json unless the output type of the function is String at which point it would default to text/plain. However, if it was explicitely set in FunctionProperties it will be used regardless of the function output type.
Resolves #587
2020-09-16 18:14:40 +02:00
Oleg Zhurakousky
e1adb011ab
Inject LOOKUP_DESTINATION_HEADER if definition property is not used
2020-09-15 13:51:49 +02:00
Oleg Zhurakousky
584d238b9e
Remove dead code from FunctionRSocketMessageHandler
...
Add and clean up tests
2020-09-02 08:27:51 +02:00
Oleg Zhurakousky
b053761be7
GH-585 Add initial support for passing/parsing Message headers
...
This woudl allow Message headers to be passed as JSON string via rsocket metadata
Resolves #585
2020-09-01 13:21:58 +02:00
Spencer Gibb
f0ad6bf8ac
Updates to new routing client broker tcp properties
2020-08-31 19:14:58 -04:00
Oleg Zhurakousky
85b591cb89
Add special handling for JSON Strings
...
Added support to JsonMessageConverter to pass string as is if input type is String
Added guard condition to RSocketListenerFunction to avoid NPE if target function can not be discovered
2020-08-31 16:35:18 +02:00
Oleg Zhurakousky
6a13436723
Annotate FunctionRSocketMessageHandler @Primary
2020-08-31 13:58:23 +02:00
Oleg Zhurakousky
81e35490ea
Code cleanup for rsocket module
2020-08-28 17:47:54 +02:00
Spencer Gibb
87187692ae
Re-enables RoutingBrokerTests
...
Also updates comments on `.route("uppercase")` as this is now required for `FunctionRSocketMessageHandler`
2020-08-28 10:45:59 -04:00
Oleg Zhurakousky
8801efa445
Temporary disabling of RoutingBrokerTests
2020-08-28 09:16:05 +02:00
Oleg Zhurakousky
353fd2e8d0
Fix distributed composition test
...
Added override of handleMessage(..) to FunctionRSocketMessageHandler to be able to register functions on demand instead of pre-registering all of them during the init
2020-08-28 09:14:57 +02:00
Spencer Gibb
e4c999b3ea
Updates property based metadata to use uppercase function name
2020-08-27 13:51:21 -04:00
Oleg Zhurakousky
b681fb96d6
Cherry-pick type of merge the work from Artem in #580
...
Resolves #580
2020-08-27 14:34:24 +02:00