Commit Graph

118 Commits

Author SHA1 Message Date
Oleg Zhurakousky
586aa7afa4 GH-925 Fix regression with Kotlin @Component regstration
Resolves #925
2022-09-20 18:07:18 +02:00
Oleg Zhurakousky
e17f79d169 GH-891 Ensure HTTP Request params are mapped even when body is not present
Resolves #891
2022-07-26 16:49:23 +02:00
Oleg Zhurakousky
724ba06c11 Fix FunctionTypeUtils as well as LocalServerPort issue
Resolves #871
2022-06-07 16:01:50 +02:00
Oleg Zhurakousky
a1c2b9de02 GH-864 Add support for carying HTTP request parameters in Message headers
Resolves #864
2022-05-03 19:14:00 +02:00
Oleg Zhurakousky
318512c23a fixes related to code change in the underlying API 2022-05-03 17:40:49 +02:00
Oleg Zhurakousky
3ab344c504 Fix merge issues
Resolves #826
2022-03-23 11:33:15 +01:00
onobc
da58b0904e Use Awaitility when waiting on local port 2022-03-23 08:33:14 +01:00
onobc
8b589c67e5 Reduce use of SocketUtils in tests
Resolves #825
2022-03-23 08:33:14 +01:00
Oleg Zhurakousky
bb3f33f1c5 Fix deprecations and breaking changes caused by dependencies 2022-03-17 14:59:04 +01:00
Oleg Zhurakousky
012a4daa59 Cleanup and additional test 2022-01-24 16:19:26 +01:00
Oleg Zhurakousky
4699f69be5 GH-792 Fix Supplier streaming in s-c-function-web
Resolves #792
2022-01-24 15:36:24 +01:00
Oleg Zhurakousky
f054d4534c Polishing after merge 4.x 2022-01-17 15:50:18 +01:00
Oleg Zhurakousky
a1a3c236d0 Merge branch '4.x' into main 2022-01-17 15:13:34 +01:00
Oleg Zhurakousky
e6be676295 GH-783 Fix Consumer processing with webflux
Resolves #783
2021-12-13 16:08:21 +01:00
Oleg Zhurakousky
e297a36a06 Remove FunctionType and dependencies on it 2021-11-10 15:21:31 +01:00
Oleg Zhurakousky
efe772a355 Disable test 2021-10-18 18:02:09 +02:00
Oleg Zhurakousky
6ae466b99e Fix checkstyle 2021-07-13 16:54:01 +02:00
Oleg Zhurakousky
189c74d5cf GH-708 Removed RequestProcessor from Flux FunctionController
Resolves #708

polish
2021-06-16 17:09:52 +02:00
Oleg Zhurakousky
b71aa90ebd GH-708 Removed RequestProcessor from MVC FunctionController 2021-06-15 19:53:02 +02:00
Oleg Zhurakousky
5a625b4ad0 GH-708 Initial refactoring and consolidation of s-c-function-web MVC part. 2021-06-15 15:15:26 +02:00
Adrien Poupard
a70564eb82 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
70076c8653 GH-597 Add support for handling MultipartFile(s)
This initial fix ensures that functions can process single MultipartFile as well as multiple.

Resolves #597
2020-11-09 19:27:01 +01:00
Oleg Zhurakousky
1ed99667bb Disable 'sentencesAcceptSse' test as it started to fail due to some reactor changes 2020-11-03 14:03:39 +01:00
Oleg Zhurakousky
9a715be835 Initial refactoring and simplificatioin of web module 2020-11-03 13:46:52 +01:00
Oleg Zhurakousky
72f05fc591 Refactor FunctionCatalog implementation 2020-10-16 17:59:06 +02:00
Oleg Zhurakousky
6863931f30 GH-578 Fix FunctionRegistration lookup
The root of the issue was in implementation of  equals() and hashCode() of FunctionInvocationWrapper

Resolves #578
2020-09-21 15:22:21 +02:00
anshlykov
8bcfad48fa Migrate to JUnit 5
spring-cloud-function-context

spring-cloud-function-context: fix

spring-cloud-function-web

spring-cloud-function-adapters

spring-cloud-function-samples

spring-cloud-function-deployer; spring-cloud-function-kotlin

Resolves #535
2020-06-10 16:43:04 +02:00
Oleg Zhurakousky
8503c39104 Re-enable ignored tests 2020-05-04 21:09:41 +02:00
谭繁华
719f3745f0 GH-489 the received data which Post Flux data to FunctionController is not same as the function apply
fix test case
2020-04-29 15:29:35 +02:00
Oleg Zhurakousky
b5592d8e7a Enhance test to validate HTTP header propagation 2020-04-21 14:13:35 +02:00
Oleg Zhurakousky
27494567a0 Add propagation of HTTP headers
Polish function composition logic
2020-04-20 18:13:45 +02:00
Oleg Zhurakousky
7bd84c79a2 GH-499,498 Add support for SupplierExporter to control output content-type
- Add 'contentType' property to ExporterProperties to assist SupplierExporter with delegating it to function catalog
- Add additional logging and testing
- Change JsonMapper to abstract class providing special handling of conversion of Json Sting to byte[]
2020-04-20 07:06:18 +02:00
Oleg Zhurakousky
8f7672399f Extract common code from BeanFactoryAwareFunctionRegistry
. . . to ensure that we can have the version of FunctionRegistry that is not dependent on BeanFactory.
2020-04-16 13:42:17 +02:00
Oleg Zhurakousky
21d68ff3c8 GH-475 Fix support for Flux<List> type conversion
At the moment support is rudimentary but given that BeanFactoryAwareFunctionRegistry provides all the necessary type conversion functionality the true fix should consider utilizing it.

Resolves #475
2020-03-31 14:46:37 +02:00
Oleg Zhurakousky
1d784c199d GH-467 Added initial support for GET method to FunctionEndpointInitializer
At the moment support is rudimentary as it does not include any type conversion, but neither does POST so it is consistent.
Given that BeanFactoryAwareFunctionRegistry provides all that functionality already perhaps the proper fix with regard to converter would be to use it or part of it in place of InMemoryFunctionCatalog currently used.

Resolves #467
2020-03-31 14:14:33 +02:00
Oleg Zhurakousky
2aed5abff8 GH-408 Enhance RoutingFunction with SpEL and application properties
- Added initial support for communicating routing instructions via SpEL thru both message headers and application properties
- Added support for communication function definition via application properties
- Added additional tests and updated documentation

Resolves #408
2019-09-10 09:25:40 +02:00
Oleg Zhurakousky
7611cba69e GH-387 Added initial support for flexible function signatures
- Added support for simple POJO functions
- Added additional utility methods
2019-08-22 16:58:18 +02:00
Oleg Zhurakousky
2c8f3644da Ignored remaining failing tests 2019-07-17 13:57:44 +02:00
Oleg Zhurakousky
93f7a248a5 Added initial support for lazy style FunctionCatalog/Registry which:
-  does not rely on any of the existing wrappers and instead relies on internal wrapper which performs  in-flight/just-in-time wrapping and unwrapping from reactive to imperative types
- performs transparent type conversion relying on MessageConverters and ConversionService
- supports multiple inputs/outputs
2019-07-17 13:54:02 +02:00
Oleg Zhurakousky
85af2e4ed6 Increased sleep time in randomly failing test 2019-07-17 11:05:05 +02:00
Oleg Zhurakousky
70d46f8b9f GH-386 Fixed NPE for non-existing functions invoked as REST endpoints
Resolves #386
2019-07-12 17:09:46 +02:00
Oleg Zhurakousky
b7d2557656 fixing doc links
polishing test
2019-05-07 11:07:01 +02:00
Oleg Zhurakousky
4d9cdb9750 GH-238 Added initial support for RoutingFunction
- Added initial implementation of RoutingFunction which is bootstrapped optionally based on setting ‘spring.cloud.function.routing.enabled’ property to true.
- Added initial documentation and tests

Resolves #238
2019-05-07 10:13:42 +02:00
Oleg Zhurakousky
abeb652830 Fixed condition for spring.cloud.function.web.export.enabled property 2019-05-03 13:25:58 +02:00
Oleg Zhurakousky
d9582a9867 GH-358 Fixd NPE in flux FunctionWebUtils
added tests

Resolves #358
2019-04-29 16:07:56 +02:00
Oleg Zhurakousky
1e2d0f2720 Merge pull request #305 from spring-operator/polish-urls-apache-license-master
URL Cleanup
2019-03-26 11:13:20 +01:00
Spring Operator
3b573c27ac URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 247 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
2019-03-21 12:48:58 -05:00
Spring Operator
bcd2f61689 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* [ ] http://compose.docker.io/ (UnknownHostException) with 1 occurrences migrated to:
  https://compose.docker.io/ ([https](https://compose.docker.io/) result UnknownHostException).
* [ ] http://nosuchhost (UnknownHostException) with 1 occurrences migrated to:
  https://nosuchhost ([https](https://nosuchhost) result UnknownHostException).
* [ ] http://projects.spring.io/spring-boot/function-sam (404) with 1 occurrences migrated to:
  https://projects.spring.io/spring-boot/function-sam ([https](https://projects.spring.io/spring-boot/function-sam) result 404).
* [ ] http://www.puppycrawl.com/dtds/suppressions_1_1.dtd (404) with 1 occurrences migrated to:
  https://www.puppycrawl.com/dtds/suppressions_1_1.dtd ([https](https://www.puppycrawl.com/dtds/suppressions_1_1.dtd) result 404).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://EditorConfig.org with 1 occurrences migrated to:
  https://EditorConfig.org ([https](https://EditorConfig.org) result 200).
* [ ] http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html with 1 occurrences migrated to:
  https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html ([https](https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) result 200).
* [ ] http://www.reactive-streams.org/ with 2 occurrences migrated to:
  https://www.reactive-streams.org/ ([https](https://www.reactive-streams.org/) result 200).
* [ ] http://plugins.jetbrains.com/plugin/6546 with 1 occurrences migrated to:
  https://plugins.jetbrains.com/plugin/6546 ([https](https://plugins.jetbrains.com/plugin/6546) result 301).
* [ ] http://eclipse.org with 1 occurrences migrated to:
  https://eclipse.org ([https](https://eclipse.org) result 302).
* [ ] http://eclipse.org/m2e/ with 2 occurrences migrated to:
  https://eclipse.org/m2e/ ([https](https://eclipse.org/m2e/) result 302).
* [ ] http://www.springsource.com/developer/sts with 1 occurrences migrated to:
  https://www.springsource.com/developer/sts ([https](https://www.springsource.com/developer/sts) result 302).

# Ignored
These URLs were intentionally ignored.

* http://localhost with 23 occurrences
2019-03-20 15:45:22 -05:00
Oleg Zhurakousky
7042394bd2 GH-274 Fixed empty body request handling
Resolves #274
2019-03-20 08:45:26 +01:00
Oleg Zhurakousky
ee13ef4e09 Fixed docs home page
fixed some formatting issues
2019-03-19 08:44:01 +01:00