Commit Graph

108 Commits

Author SHA1 Message Date
Oleg Zhurakousky
cd834fa407 GH-913 Fix AWS Context propagation
Resolves #913
2022-08-08 15:14:32 +02:00
Oleg Zhurakousky
6b6ae0ffad Reworked AWSUtils and related classes to delegate type conversion to AWSTypesMessageConverter
Resolves #889

polish
2022-08-03 16:49:21 +02:00
atyamlalithya
0c92ecb498 Update AWSLambdaUtils.java
Added this fix to preserve headers from original payload
2022-08-03 15:24:10 +02:00
Maciej Walkowiak
c08cf7ffcb Fix typo.
Fix typo.
2022-07-26 11:50:04 +02:00
Maciej Walkowiak
c5c1c2cd04 Deprecate SpringBootStreamHandler in favor of FunctionInvoker.
Resolves #898
2022-07-26 11:46:45 +02:00
Oleg Zhurakousky
8bb5746487 Relax logging in SimpleFunctionRegistry 2022-07-25 15:46:13 +02:00
Oleg Zhurakousky
047c0b1e6d GH-861 Add constant for aws-context
Resolves #861
2022-04-21 13:16:27 +02:00
Oleg Zhurakousky
c58123a211 Polishing previous commit as it's current version breaks the test 2022-04-21 10:19:56 +02:00
Twometer
c38648459c Fix ClassCastException with Spring Native 2022-04-21 09:10:57 +02:00
rahulmlokurte
3a9ee01da6 Fix #844 issue custom object type conversion is failing, when it has headers as a variable name
Resolves #850
2022-04-21 09:04:35 +02:00
Oleg Zhurakousky
6569c0a2e9 GH-841 Add support for propagating errors from AWS Custom Runtime
Resolves #841
2022-04-20 19:56:36 +02:00
Twometer
c8a5a722a0 Add support for lambda authorizers
Resolves #842
2022-03-29 12:07:31 +02:00
Oleg Zhurakousky
3b4ac78f14 GH-833 Add initial support for AWS APIGatewayCustomAuthorizerEvent
Resolves #833
2022-03-23 13:03:08 +01:00
Oleg Zhurakousky
aa53f67b26 GH-784 Modified AWS example to NOT rely on web
Resolves #784
2022-01-26 18:26:37 +01:00
Oleg Zhurakousky
5d26534283 GH-785 Ad initial support for ApplicationLoadBalancerRequestEvent in AWS
Resolves #785
2022-01-25 18:47:51 +01:00
Oleg Zhurakousky
9474ed1dfd GH-787 Fix 'body' format in JSON output for AWS responses
Resolves #787
2022-01-25 14:00:56 +01:00
Oleg Zhurakousky
2771fe905d Cleanup version determination in CustomRuntimeEventLoop 2022-01-17 18:06:52 +01:00
Oleg Zhurakousky
ff9cb57741 GH-789 Propagate AWS FunctionInvoker exceptions
They will be handled by the AWS runtime and properly reported and recorded.
Resolves #789
2022-01-12 10:44:29 +01:00
Oleg Zhurakousky
4f3cef17be GH-786 Fix regression with RoutingFunction over AWS APIGateway
Resolves #786
2022-01-03 14:42:31 +01:00
Oleg Zhurakousky
18d68c5130 Add additional logging to CustomRuntimeEventLoop 2021-12-06 12:55:42 +01:00
Oleg Zhurakousky
d73056adad Change format of user agent to be aligned with the original PR from @msailes 2021-11-12 15:23:25 +01:00
Oleg Zhurakousky
dc0c52f488 Modified version determination for user-agent, added test 2021-11-12 12:58:06 +01:00
Mark Sailes
66369af641 Send a user-agent header with requests to the Lambda Runtime API.
Adding the author tag.
2021-11-12 12:08:25 +01:00
Oleg Zhurakousky
23cfa01edf GH-751 Remove commented code 2021-11-02 12:25:28 +01:00
Oleg Zhurakousky
f61739fa08 GH-751 Ensure RoutingFunction can be applied when function input type is AWS type 2021-11-02 12:15:08 +01:00
Oleg Zhurakousky
12cf0d5763 Restructure and simplify AWS Custom Runtime code
Add Custom Runtime emulator to simplify integration testing
2021-10-20 17:52:52 +02:00
Oleg Zhurakousky
495b42bbe7 Refactor CustomRuntimeEventLoop in AWS module to ensure it is spring aot native compatible 2021-09-21 16:08:09 +02:00
Oleg Zhurakousky
3b4b7aae5c GH-743 Remove setting of HTTP 'export' properties for AWS Custom Runtime
Resolves #743
2021-09-16 11:27:17 +02:00
Oleg Zhurakousky
334d2d8e8a GH-722 Fix support for API Gateway v2 when Function signature is POJO
Resolves #722
2021-08-17 08:25:28 +02:00
Oleg Zhurakousky
873860571b GH-718 Improve support for Function bean definition
Added sample for functional bean definition
2021-08-03 13:02:15 +02:00
Oleg Zhurakousky
d9db0af13d GH-716 Add support for returning custom status code
Resolves #716
2021-07-30 12:42:48 +02:00
Oleg Zhurakousky
7e81cdd552 Improve AWSLambdaUtils 2021-07-28 14:56:07 +02:00
Oleg Zhurakousky
dc98f0b49f 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
039387d9c6 GH-698 Fix routing function support in AWS
Introduce auto-fallback to routing function if more then one function is present and no definition is provided.
Add explicit routing sample

Add documentation
2021-05-21 17:04:01 +02:00
Oleg Zhurakousky
c86ce12484 Ensure user set headers in API Gateway are properly propagated to message headers 2021-05-18 16:33:04 +02:00
Oleg Zhurakousky
704df35bb8 Add tests for AWS CustomRuntimeEventLoop 2021-05-17 20:03:11 +02:00
Oleg Zhurakousky
b2f36936ac GH-662 Fix support for reactive functions in AWS
This commit also includes other minor fixes around CustomRuntime which was getting in the way of this specific issue
 Added lookup for _HANDLER env variable
 Added few tests (will need more)
 Added support for Iterable for reactive functions

Resolves #662
2021-04-08 15:57:14 +02:00
Oleg Zhurakousky
866eac9ca1 GH-673 Change the logic to recognize AWS CustomRuntime
Prior to this it was based on existance of AWS_LAMBDA_RUNTIME_API env variable which turned out to be not very reliable since it is present in Java 11 runtime
With this commit it simple ensures that the handler is neither FunctionInvoker nor AbstractSpringFunctionAdapterInitializer

Resolves #673
2021-04-07 16:13:11 +02:00
pguti778
827c7025ef AWS: Change Default environment values
I've faced the "The key must start with a letter and can only contain letters, numbers, and underscores." issue in the AWS lambda. So both _HANDLER and spring.cloud.function.definition were not enabled to be added as environment variables. Let me know your thoughts.
2021-03-02 22:09:41 -03:00
Oleg Zhurakousky
f3573f359d GH-639 Fix NPE for when using Supplier with AWS API Gateway
Resolves #639
2021-02-08 10:36:00 +01:00
Oleg Zhurakousky
1a0182a068 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
1f518a0287 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
648c4b165a 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
Oleg Zhurakousky
c977a50239 GH-618 Remove dependency on FunctionInspector from AWS FunctionInvoker
Resolves #618
2020-12-08 15:00:56 +01:00
Oleg Zhurakousky
e95279daae Polish to fix build 2020-11-03 15:38:27 +01:00
Oleg Zhurakousky
e47fc2d5cf Disconnect FunctionInspector from adapter request handlers and Kotlin module 2020-10-20 13:58:51 +02:00
Oleg Zhurakousky
b8d462678a Deprecate and remove all usages of FunctionInspector 2020-10-19 18:11:11 +02:00
Oleg Zhurakousky
10b1f808ba Consolidate isMessage() operation 2020-10-19 14:57:55 +02:00
Oleg Zhurakousky
72f05fc591 Refactor FunctionCatalog implementation 2020-10-16 17:59:06 +02:00
Oleg Zhurakousky
95d8b54c80 GH-574 Fix String wrapping for input/output for AWS APIGateway
As suggested by the user we were improperly wrapping the String payload for input/output during APIGateway interaction

Resolves #574
2020-08-06 16:01:12 +02:00