Commit Graph

194 Commits

Author SHA1 Message Date
Semyon Fishman
95a462467e GH-258, Avoid duplicate registration of functional bean
Added logic in FunctionalSpringApplication to avoid registering the functional bean twice.  This issue occured when executing in "hybrid" mode, and using the same bean as both the application context source and functional bean.
2019-02-13 11:40:25 -05:00
Oleg Zhurakousky
c797e4fed4 Minor refactoring in ContextFunctionRegistry 2019-02-12 15:30:52 +01:00
Oleg Zhurakousky
b076f6349e Consolidated all function wrappers around WrappedFunction 2019-02-11 19:08:52 +01:00
Oleg Zhurakousky
f8e966f79f GH-243 Added wrapper for fluxed Function 2019-02-11 17:08:09 +01:00
Oleg Zhurakousky
805b85b102 GH-243, GH-257 Added reactive consumer wrapper
- Added wrapper for an already reactive consumer to ensure that consumers can be consistently represented as Function<Flux, Mono>
- Fixed the big that deal with inconsistent result in web environments due to inconsistent representation of the Consumers
- Polished tests

Resolves #243
Resolves #257
2019-02-11 15:30:08 +01:00
Oleg Zhurakousky
b1fa949dd9 More polishing in ContextFunctionCatalog 2019-02-06 19:08:44 +01:00
Oleg Zhurakousky
5b98c01d2a Removed duplication of fluxification logic
- Removed duplication of fluxification logic in FunctionRegistration and ContextFunctionCatalog.
- Polished FunctionRegistration.wrap logic
- Added initial javadoc
2019-02-06 16:39:58 +01:00
Oleg Zhurakousky
632b2bf6ab interim 2019-02-06 15:31:31 +01:00
Oleg Zhurakousky
194858bf60 GH-253 Updated AZUR library 2019-02-06 07:59:51 +01:00
Oleg Zhurakousky
79cdf3c9b5 Additional cleanup and refactoring in ContextFunctionCatalog 2019-02-06 00:02:50 +01:00
Oleg Zhurakousky
6a2717a580 Tidy up ContextFunctionCatalog 2019-02-05 23:03:46 +01:00
Marcin Grzejszczak
c6ddfe1af4 Added checkstyle for tests 2019-02-03 15:34:10 +01:00
Marcin Grzejszczak
e4b08a083c Turned on checkstyle 2019-02-01 15:48:32 +01:00
buildmaster
94e9b8f2f8 Bumping versions to 2.0.2.BUILD-SNAPSHOT after release 2019-01-31 14:48:58 +00:00
buildmaster
036e0c4090 Going back to snapshots 2019-01-31 14:48:57 +00:00
buildmaster
eaf519b82a Update SNAPSHOT to 2.0.1.RELEASE 2019-01-31 14:34:17 +00:00
Oleg Zhurakousky
589e451d14 GH-247 Added spring.cloud.function.definition property
Added spring.cloud.function.definition property which is used by FunctionRegistry as a supplement instruction to resolve nameless lookups.
It is used by web module to map single or multiple (composed) functions to the root path (/)

Resolves #247
2019-01-28 18:47:18 +01:00
Dave Syer
cca2833f94 Tighten up contract for SingleEntryFunctionRegistry
And add some tests. Fixes gh-250.
2019-01-17 17:54:12 +00:00
buildmaster
9cf4b72ef3 Bumping versions to 2.0.1.BUILD-SNAPSHOT after release 2019-01-08 11:32:36 +00:00
buildmaster
5b2345c7d4 Going back to snapshots 2019-01-08 11:32:36 +00:00
buildmaster
612d37616d Update SNAPSHOT to 2.0.0.RELEASE 2019-01-08 10:44:55 +00:00
buildmaster
43a886b7b7 Going back to snapshots 2018-12-20 19:14:43 +00:00
buildmaster
291aafd94a Update SNAPSHOT to 2.0.0.RC3 2018-12-20 19:10:34 +00:00
Dave Syer
62b11a4a26 Add global escape hatch for switching off functional beans
This is useful for example if the user is taking care of the
functional bean registration in some other way, and still wants to
use spring.functional.enabled=false to control that.
2018-12-13 09:33:19 +00:00
Oleg Zhurakousky
d89835bd80 GH-232 Removed FunctionScan annotation
Reoved FunctionScan annotation since it provides no additional value to the end user
Preserved auto component scanning for Functions in  package
Updated filter to additionally scan for Supplier and Consumer

Resolves #232
2018-12-03 17:29:16 +01:00
Oleg Zhurakousky
564f238448 GH-236 Added initial spring-configuration-metadata.json
Resolves #236
2018-12-03 15:08:24 +01:00
Oleg Zhurakousky
6a16a44aa0 GH-235 Moved Kotlin support to a separate module
Resolves #235
2018-11-30 18:48:32 +01:00
buildmaster
f0f957b96a Going back to snapshots 2018-11-19 11:23:25 +00:00
buildmaster
241652d9b8 Update SNAPSHOT to 2.0.0.RC2 2018-11-19 11:19:40 +00:00
Dave Syer
8cce006b4c Remove dependency on Kotlin for tests
The Eclipse tooling keeps flaking out and refuses to work at all
since 0.8.7. Maybe revisit this when it is stable.
2018-11-16 17:19:19 +00:00
Oleg Zhurakousky
d1b9a9b3fb Cleaned up FunctionContextUtils
cleaned up FunctionContextUtils to be more generic and return Type instead of FunctionType
2018-11-08 11:17:16 +01:00
Oleg Zhurakousky
8eb7e06e02 GH-227 Moved Kotlin transformation to BFPP
resolves #227
2018-10-31 16:59:53 +01:00
Oleg Zhurakousky
159e2108a2 Upgraded Kotlin plugin 2018-10-31 11:19:42 +01:00
buildmaster
9cf723949b Going back to snapshots 2018-10-29 08:19:29 +00:00
buildmaster
e2f4d0a9e5 Update SNAPSHOT to 2.0.0.RC1 2018-10-29 08:15:29 +00:00
Oleg Zhurakousky
880333d394 GH-224 Added kotlin/java func composition test
Added test to make ure that Kotlin and Java functions are composable
Resolves #224
2018-10-26 16:16:57 +02:00
Oleg Zhurakousky
265a9d61aa general cleanup 2018-10-26 16:11:55 +02:00
Oleg Zhurakousky
2e5c6d22b5 Added support for input Collection param
Added support for function parameter type Collection
Updated both Jackson and Gson mappers
Defined a new toObject() operation on JsonMapper and deprecated the old

Resolves #210
2018-10-25 12:47:41 +01:00
buildmaster
435e4d0438 Going back to snapshots 2018-10-23 13:35:10 +00:00
buildmaster
0c5ad6acbd Update SNAPSHOT to 2.0.0.M4 2018-10-23 13:31:46 +00:00
Dave Syer
54deae5dba Ensure FunctionalSpringApplication works with String sources 2018-10-23 14:03:43 +01:00
Dave Syer
c3b03a1b11 Use web-application-type=reactive by default if webflux present
We want the default application type to be REACTIVE if webflux is
present (formerly it was NONE). In AWS and Azure we also want
the webflux beans to be switched off in a "lite" application
context (formerly they were unconditional).
2018-10-23 14:03:43 +01:00
Oleg Zhurakousky
af717e445d Polishing
Resolves #219
2018-10-22 14:26:59 +02:00
Dave Syer
ba34d4b81b Add @FunctionalSpringBootTest and mini web server
User can run a minimal HTTP app using an app that is a Function
or an ApplicationContextInitializer. Can also test using
@FunctionalSpringBootTest in place of @SpringBootTest.

Add some tests and documentation for functional beans

Make server.address configurable
2018-10-22 14:26:17 +02:00
Dave Syer
4315cb1d61 SpringApplication->FunctionalSpringApplication (less confusing) 2018-10-18 09:38:27 +01:00
Dave Syer
c4ee7ab065 Add other annotation processors to functional context 2018-10-18 09:36:43 +01:00
Oleg Zhurakousky
ae07a13d03 GH-56 Added support for Function<Flux, Mono> and <Mono, Flux>
Resolves #56
Resolves #218
2018-10-17 21:14:27 -04:00
Dave Syer
baabff9a40 Prefer web application type NONE in functional app 2018-10-17 13:51:42 +01:00
Dave Syer
6c0e1bfc2f Typo in javadoc 2018-10-16 16:39:29 +01:00
Oleg Zhurakousky
31e689b108 GH-208 polishing ec68f64 commit
Ensured that the composed Supplier is of type Mono<Void>
Fix tests
2018-10-14 20:29:13 -04:00