5cfbbecb8bebc159865f999419554873f2bef520
* 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`)
= Spring Functions Catalog In this repository, you will find a collection of components that can meet various data integration use cases and requirements. The repository's primary focus is to provide a set of standalone Java functions that can be useful in the end-user applications as-is. Most of these functions are, essentially, auto-configurations for specific https://docs.spring.io/spring-integration/reference/endpoint-summary.html#endpoint-summary[Spring Integration Channel Adapter]. These functions can be consumed in the target project any possible way, for example, the `FunctionFlowBuilder` from https://docs.spring.io/spring-cloud-function/docs/current/reference/html/spring-integration.html#spring-integration[Spring Cloud Function Integration] module can be used to compose an `IntegrationFlow` for any complex solution. This functions catalog is also a foundation for https://spring.io/projects/spring-cloud-stream-applications[Spring Cloud Stream Applications] project. == Reusable Functions |=== | `java.util.Supplier` | `java.util.Function` | `java.util.Consumer` |link:supplier/debezium-supplier/README.adoc[Debezium supplier] |link:function/aggregator-function/README.adoc[Aggregator] |link:consumer/analytics-consumer/README.adoc[Analytics] |link:supplier/file-supplier/README.adoc[File] |link:function/filter-function/README.adoc[Filter] |link:consumer/cassandra-consumer/README.adoc[Cassandra] |link:supplier/ftp-supplier/README.adoc[FTP] |link:function/header-enricher-function/README.adoc[Header-Enricher] |link:consumer/elasticsearch-consumer/README.adoc[Elasticsearch] | |link:function/header-filter-function/README.adoc[Header-Filter] |link:consumer/file-consumer/README.adoc[File] |link:supplier/http-supplier/README.adoc[HTTP] |link:function/http-request-function/README.adoc[HTTP Request] |link:consumer/ftp-consumer/README.adoc[FTP] |link:supplier/jdbc-supplier/README.adoc[JDBC] |link:function/image-recognition-function/README.adoc[Image Recognition(Tensorflow)] | |link:supplier/jms-supplier/README.adoc[JMS] |link:function/object-detection-function/README.adoc[Object Detection(Tensorflow)] |link:consumer/jdbc-consumer/README.adoc[JDBC] |link:supplier/mail-supplier/README.adoc[Mail] |link:function/semantic-segmentation-function/README.adoc[Semantic Segmentation(Tensorflow)] |link:consumer/log-consumer/README.adoc[Log] |link:supplier/mongodb-supplier/README.adoc[MongoDB] |link:function/spel-function/README.adoc[SpEL] |link:consumer/mongodb-consumer/README.adoc[MongoDB] |link:supplier/mqtt-supplier/README.adoc[MQTT] |link:function/splitter-function/README.adoc[Splitter] |link:consumer/mqtt-consumer/README.adoc[MQTT] |link:supplier/rabbit-supplier/README.adoc[RabbitMQ] |link:function/task-launch-request-function/README.adoc[Task Launch Request] |link:consumer/rabbit-consumer/README.adoc[RabbitMQ] |link:supplier/s3-supplier/README.adoc[AWS S3] | |link:consumer/redis-consumer/README.adoc[Redis] |link:supplier/sftp-supplier/README.adoc[SFTP] | |link:consumer/rsocket-consumer/README.adoc[RSocket] |link:supplier/syslog-supplier/README.adoc[Syslog] | |link:consumer/s3-consumer/README.adoc[AWS S3] |link:supplier/tcp-supplier/README.adoc[TCP] | |link:consumer/sftp-consumer/README.adoc[SFTP] |link:supplier/time-supplier/README.adoc[Time] | |link:consumer/tcp-consumer/README.adoc[TCP] |link:supplier/twitter-supplier/README.adoc[Twitter] |link:function/twitter-function/README.adoc[Twitter] |link:consumer/twitter-consumer/README.adoc[Twitter] |link:supplier/websocket-supplier/README.adoc[Websocket] | |link:consumer/websocket-consumer/README.adoc[Websocket] | | |link:consumer/wavefront-consumer/README.adoc[Wavefront] |link:supplier/xmpp-supplier/README.adoc[XMPP] | |link:consumer/xmpp-consumer/README.adoc[XMPP] |===
Description
Languages
Java
100%