Commit Graph

184 Commits

Author SHA1 Message Date
Artem Bilan
24299bed59 Fix formatting 2024-11-20 09:49:17 -05:00
Artem Bilan
8b4d3b7b54 Increase timeout to 30 sec in the BatchInsertTimeoutTests 2024-11-20 09:45:36 -05:00
Artem Bilan
69dade53de Add channel to the WebsocketConsumerServerHandler.CHANNELS before handshake
In attempt to fix a race condition in the tests

* Remove `log4j` deps as redundant: Spring Boot brings them anyway for logback compatibility
* Add `logback-test.xml` to the `spring-websocket-consumer.test` for test race condition failures
2024-10-16 10:52:06 -04:00
Artem Bilan
e2f8d4c18f Increase timeout in the WebsocketConsumerTests 2024-10-07 10:12:22 -04:00
Artem Bilan
6ab6fece8a Some WebsocketConsumerTests adjustments 2024-10-07 09:52:02 -04:00
Artem Bilan
af672f3374 Adjust timing for the WebsocketConsumerTests 2024-10-03 12:07:32 -04:00
Artem Bilan
550d665bd9 Fix new Checkstyle violations
Move `apply plugin: 'com.gradle.develocity'` after we have modified `startParameter.noBuildScan`.
Otherwise, the Develocity is configured for its default server instead of Spring's one
2024-08-21 14:50:41 -04:00
Artem Bilan
fd33ff9edc GH-48: Upgrade to spring-integration-aws:3.0.6
Fixes: #48

* Adjust `AmazonS3UploadFileTests` to new reality in the `S3MessageHandler` for `File` uploads.
Related to: f2aded0686
2024-03-28 12:27:22 -04:00
Artem Bilan
77112eb8a1 Clean up README files, fix typos and broken links 2024-03-20 15:57:35 -04:00
Artem Bilan
946b5969da Various refactoring and improvements
* Remove `MessageChannel` beans whenever their really don't need to be exposed into the target application context.
Use local property definition instead in the configuration class
* Make Twitter `Consumer` configurations conditional on their required properties
to avoid auto-configuration for those bean which are not going to be used in the target application
2024-03-07 14:51:36 -05:00
Artem Bilan
c22404c52b Fix concurrent modification error for websocket-consumer 2024-02-05 11:05:11 -05:00
Artem Bilan
cd036841b8 Remove @MessagingGateway usage
The `@MessagingGateway` requires a classpath scanning which is not possible
when we use these function artifacts as dependencies, where packages are fully
different from what target project is built with
2024-01-12 15:44:40 -05:00
Artem Bilan
eb8b5b32b6 Make Log, Redis & RSocket consumers as auto-config
* Fix all their Checkstyle violations
* Expose convenient `Consumer<Flux<Message<?>>>` for RSocket consumer
2024-01-09 17:25:39 -05:00
Artem Bilan
68e0990016 Make Elasticsearch consumer as auto-config
* Fix all its Checkstyle violations
* Fix Checkstyle violations in the `spring-kafka-publisher`
2024-01-09 16:49:56 -05:00
Artem Bilan
0e7e010065 Make Cassandra consumer as auto-config
* Fix all its Checkstyle violations
* Expose also a `cassandraConsumer` bean for convenience
* Reflect the changes in the README
2024-01-09 15:59:35 -05:00
Artem Bilan
8ef105b9c5 Make Mongo & JDBC modules as auto-config
* Also make a `spring-splitter-function` as an auto-config since it used in Mongo & JDBC suppliers
* Fix all their Checkstyle violations
2024-01-09 13:10:18 -05:00
Artem Bilan
26479fb1bc Use Testcontainers for RabbitMQ modules
* Remove `ownConnection` feature from RabbitMQ modules.
It does not bring too much value over Spring Boot config.
Plus no one else modules tries to mimic such a behavior.
So, fully rely on Spring Boot auto-configuration for RabbitMQ as well.
2024-01-09 10:10:23 -05:00
Artem Bilan
f509b15cde Make RabbitMQ modules as auto-configuration
* Fix all the Checkstyle violations and compiler warnings
* Add tests to these modules
2024-01-08 19:10:22 -05:00
Artem Bilan
80e0b80a30 Make WebSocket modules as auto-configuration
* Fix all the Checkstyle violations and compiler warnings
* Also fix Checkstyle violations for `spring-time-supplier`
2024-01-08 14:17:29 -05:00
Artem Bilan
373fbdd8a2 Make S3 modules as auto-configuration
* Fix all the Checkstyle violations and compiler warnings
* Fix HTTP Supplier props prefix in the README
2024-01-08 13:13:43 -05:00
Artem Bilan
56f75fb6db GH-2: Expose a @MessagingGateway for sftpConsumer
Fixes: #2

* To avoid `@Lazy` and other possible injection problems
when an `IntegrationFlow` is not ready yet, provide a `@MessagingGateway(name = "sftpConsumer")`
explicitly for the `MessageConsumer` in the `SftpConsumerConfiguration`

* Make SFTP modules as auto-configuration
* Fix Checkstyle violations in those modules
2024-01-08 11:37:05 -05:00
Artem Bilan
985a753819 Make ZeroMQ modules as auto-configuration
* Fix all the Checkstyle violations in these modules
2024-01-08 10:21:20 -05:00
Artem Bilan
76e7ed1b69 Make TCP modules as auto-config
* Fix their Checkstyle violations
2024-01-05 15:11:55 -05:00
Artem Bilan
e1a1845dab Various improvements for MQTT modules code style 2024-01-05 14:05:59 -05:00
Artem Bilan
fbe0d220f7 Make MQTT modules as auto-config
* Fix all the Checkstyle violations for those modules
* Introduce a `MosquittoContainerTest` contract into the `spring-function-test-support`
and use it in the MQTT modules
* Fix READMEs for previously migrated modules to auto-configuration
2024-01-05 13:57:55 -05:00
Artem Bilan
3f349ca451 Make file and FTP modules as auto-config
* Fix all the Checkstyle violations for those modules
2024-01-05 12:48:09 -05:00
Artem Bilan
de6a659ab1 Make Twitter modules as auto-configuration
* Fix all the Checkstyle violation in the effected modules
* Fix Twitter modules READMEs to reflect a nature of the auto-configuration
* Add (and mention in README) new `enabled` properties for various Twitter supplier configurations:
by default all of them would be started just by the presence in classpath
2024-01-04 16:14:16 -05:00
Artem Bilan
7b9bd3f3a9 Make XMPP functions as auto-config
* Fix all the Checkstyle violations for those modules
2024-01-03 17:13:51 -05:00
Artem Bilan
7b06b8f4ba Make spring-wavefront-consumer as auto-config
* Fix all the Checkstyle violations
2024-01-03 16:33:47 -05:00
Artem Bilan
c7b8647258 Make spring-analytics-consumer as auto-config
* Fix all the Checkstyle violations
2024-01-03 15:20:46 -05:00
Chris Bono
836708f0f2 GH-7: Add checkstyle and javaformat plugins
Fixes: #7

* Run `./gradlew format`
* Updates from PR review suggestions
2024-01-03 10:40:42 -05:00
Chris Bono
84e732da08 Prefix function names with spring-
* Add `spring-` prefix to function names

Fixes: #9

This commit renames each sub-module in the common, consumer, function
and supplier groups with a prefix of `spring-`.

* Update README.adoc links to new prefixed names
2024-01-02 14:07:00 -05:00
Artem Bilan
5cfbbecb8b Adjust dependency management for Dependabot
* Add `com.github.spotbugs` plugin to avoid warnings about missed nullability annotations
* Make `TimeSupplierConfiguration` as an auto-configuration
* Add `io.debezium:debezium-bom` as the first one to let others override its deps versions
* Move `org.springframework.boot:spring-boot-dependencies` after `io.awspring.cloud:spring-cloud-aws-dependencies`
to override its deps versions (e.g. `jakarta.mail` `1.0.0` > `2.0.2`)
2023-12-23 12:42:44 -05:00
Artem Bilan
52e506ec76 Rework Kafka Publisher to use DSL Spec for bean
It is not recommended to use `IntegrationComponentSpec.getObject()` manually.

* Change `KafkaPublisherConfiguration` to use `KafkaProducerMessageHandlerSpec` for bean definition
* Fix `KafkaPublisherConfigurationTests` to add an `IntegrationAutoConfiguration` into the picture as well
2023-11-27 09:35:26 -05:00
Artem Bilan
19f904eb66 Migrate project to Gradle
* Upgrade all the dependencies to the latest versions
* Fix some incompatibilities
* Fix some warnings
2023-11-23 15:45:29 -05:00
cachescrubber
902b713bd4 Fix scope of function-test-support dependency (#509) 2023-11-13 09:48:46 -06:00
GitHub Actions Bot
180d4e55e8 Next development version 4.0.1-SNAPSHOT / 2022.0.1-SNAPSHOT 2023-10-27 21:14:16 -05:00
Soby Chacko
27bac2029b Address deprecation warnings
Remove the usage of deprecated `IntegrationFlows` in favor of `IntegrationFlow`
2023-09-22 10:05:23 -04:00
sjgleam
dc94e576c7 Fix typo for link in SFTP Consumer README 2023-09-15 10:46:28 -04:00
GitHub Actions Bot
21079bdc54 Next development version 4.0.0-SNAPSHOT / 2022.0.0-SNAPSHOT 2023-07-21 12:40:45 +00:00
GitHub Actions Bot
4a595f2284 Release 4.0.0-RC2 / 2022.0.0-RC2 2023-07-21 12:40:08 +00:00
GitHub Actions Bot
c7548ae4e3 Next development version 4.0.0-SNAPSHOT / 2022.0.0-SNAPSHOT 2023-07-20 14:56:01 +00:00
GitHub Actions Bot
5eade0d669 Release 4.0.0-RC2 / 2022.0.0-RC2 2023-07-20 14:55:34 +00:00
Artem Bilan
1df9fd9ca5 Upgrade to AWS SDK v2
* Upgrade to Spring Integration AWS `3.0.1`
* Upgrade to Spring Cloud AWS `3.0.1`
* Use `spring-cloud-aws-dependencies` BOM to manage Spring Cloud AWS deps, as well as AWS SDK
* Remove `AmazonS3Properties` in favor of similar properties in the Spring Cloud AWS auto-configuration
* Remove `CompatibleStorageAmazonS3Configuration` in favor of its code migration to the single `AmazonS3Configuration`
* Fix `supplier`, `consumer`, `source` and `sink` for S3 to use API and programing model from the mentioned upgrades
* Add extra `dataflow-configuration-metadata` entries for the mentioned properties from the Spring Cloud AWS auto-configuration
* Regenerate README for `s3-source` and `s3-sink`
* Fix `metadata-store-common` to use the latest Spring Integration AWS for DynamoDB store impl

* * Fix `AmazonS3ConfigurationTests` for missed `AwsAutoConfiguration`
in an `ApplicationContextRunner` setup

* * Remove unused import in the `MetadataStoreAutoConfigurationTests`

* * Remove unused import in the `AbstractAwsS3ConsumerMockTests`
2023-07-19 09:36:09 -04:00
GitHub Actions Bot
bcdb881fac Next development version 4.0.0-SNAPSHOT 2023-06-14 04:47:46 +00:00
GitHub Actions Bot
358be92abd Release 4.0.0-RC1 2023-06-14 04:47:29 +00:00
Artem Bilan
7db2c77238 GH-265: Add Kafka Supplier & Source (#474)
* Also add support for nested config props for `kafka-sink`

Fixes #265
2023-06-12 14:23:06 -05:00
Corneil du Plessis
0c0673552a Restore change for Mongo Tests. 2023-06-08 23:56:57 +02:00
Corneil du Plessis
1cdb6e3945 [Revert] Spring Boot to 3.0.7 2023-06-08 18:56:41 +02:00
Corneil du Plessis
a54d602d5c [Update] Spring Boot to 3.1.0 2023-06-08 18:47:25 +02:00