diff --git a/applications/apps-build/stream-apps-descriptor/pom.xml b/applications/apps-build/stream-apps-descriptor/pom.xml index 2206d721..5707a52b 100644 --- a/applications/apps-build/stream-apps-descriptor/pom.xml +++ b/applications/apps-build/stream-apps-descriptor/pom.xml @@ -1,7 +1,7 @@ - stream-apps-release-train + apps-build org.springframework.cloud.stream.app Fahrenheit.BUILD-SNAPSHOT diff --git a/applications/apps-build/stream-apps-docs/pom.xml b/applications/apps-build/stream-apps-docs/pom.xml index e72e8bd3..1e787427 100644 --- a/applications/apps-build/stream-apps-docs/pom.xml +++ b/applications/apps-build/stream-apps-docs/pom.xml @@ -6,7 +6,7 @@ Stream Apps Docs org.springframework.cloud.stream.app - stream-apps-release-train + apps-build Fahrenheit.BUILD-SNAPSHOT diff --git a/applications/processor/filter-processor/README.adoc b/applications/processor/filter-processor/README.adoc index ddbe62cd..7b7f435a 100644 --- a/applications/processor/filter-processor/README.adoc +++ b/applications/processor/filter-processor/README.adoc @@ -16,7 +16,6 @@ If the incoming type is `byte[]` and the content type is set to `text/plain` or == Options //tag::configuration-properties[] -$$spel.function.expression$$:: $$A SpEL expression to apply.$$ *($$String$$, default: `$$$$`)* //end::configuration-properties[] //end::ref-doc[] diff --git a/applications/processor/filter-processor/pom.xml b/applications/processor/filter-processor/pom.xml index 5331aff5..b491f6ca 100644 --- a/applications/processor/filter-processor/pom.xml +++ b/applications/processor/filter-processor/pom.xml @@ -17,7 +17,7 @@ - org.springframework.cloud.function + org.springframework.cloud.fn filter-function ${java-functions.version} diff --git a/applications/processor/splitter-processor/pom.xml b/applications/processor/splitter-processor/pom.xml index 2f6f8aaf..8e9a3eb1 100644 --- a/applications/processor/splitter-processor/pom.xml +++ b/applications/processor/splitter-processor/pom.xml @@ -27,7 +27,7 @@ - org.springframework.cloud.function + org.springframework.cloud.fn splitter-function ${java-functions.version} diff --git a/applications/processor/transform-processor/pom.xml b/applications/processor/transform-processor/pom.xml index 233e2616..f93209e6 100644 --- a/applications/processor/transform-processor/pom.xml +++ b/applications/processor/transform-processor/pom.xml @@ -28,7 +28,7 @@ - org.springframework.cloud.function + org.springframework.cloud.fn spel-function ${java-functions.version} diff --git a/applications/sink/cassandra-sink/README.adoc b/applications/sink/cassandra-sink/README.adoc index add39433..0de9b5fb 100644 --- a/applications/sink/cassandra-sink/README.adoc +++ b/applications/sink/cassandra-sink/README.adoc @@ -14,20 +14,11 @@ The **$$cassandra$$** $$sink$$ has the following options: //tag::configuration-properties[] -$$cassandra.cluster.create-keyspace$$:: $$Flag to create (or not) keyspace on application startup.$$ *($$Boolean$$, default: `$$false$$`)* -$$cassandra.cluster.entity-base-packages$$:: $$Base packages to scan for entities annotated with Table annotations.$$ *($$String[]$$, default: `$$[]$$`)* -$$cassandra.cluster.init-script$$:: $$Resource with CQL scripts (delimited by ';') to initialize keyspace schema.$$ *($$Resource$$, default: `$$$$`)* -$$cassandra.cluster.skip-ssl-validation$$:: $$Flag to validate the Servers' SSL certs$$ *($$Boolean$$, default: `$$false$$`)* -$$cassandra.consistency-level$$:: $$The consistency level for write operation.$$ *($$ConsistencyLevel$$, default: `$$$$`)* -$$cassandra.ingest-query$$:: $$Ingest Cassandra query.$$ *($$String$$, default: `$$$$`)* -$$cassandra.query-type$$:: $$QueryType for Cassandra Sink.$$ *($$Type$$, default: `$$$$`, possible values: `INSERT`,`UPDATE`,`DELETE`,`STATEMENT`)* -$$cassandra.statement-expression$$:: $$Expression in Cassandra query DSL style.$$ *($$Expression$$, default: `$$$$`)* -$$cassandra.ttl$$:: $$Time-to-live option of WriteOptions.$$ *($$Integer$$, default: `$$0$$`)* $$spring.data.cassandra.cluster-name$$:: $$$$ *($$String$$, default: `$$$$`)* $$spring.data.cassandra.compression$$:: $$Compression supported by the Cassandra binary protocol.$$ *($$Compression$$, default: `$$none$$`, possible values: `LZ4`,`SNAPPY`,`NONE`)* $$spring.data.cassandra.connect-timeout$$:: $$Socket option: connection time out.$$ *($$Duration$$, default: `$$$$`)* $$spring.data.cassandra.consistency-level$$:: $$Queries consistency level.$$ *($$DefaultConsistencyLevel$$, default: `$$$$`, possible values: `ANY`,`ONE`,`TWO`,`THREE`,`QUORUM`,`ALL`,`LOCAL_ONE`,`LOCAL_QUORUM`,`EACH_QUORUM`,`SERIAL`,`LOCAL_SERIAL`)* -$$spring.data.cassandra.contact-points$$:: $$Cluster node addresses in the form 'host:port'.$$ *($$List$$, default: `$$[127.0.0.1:9042]$$`)* +$$spring.data.cassandra.contact-points$$:: $$Cluster node addresses in the form 'host:port', or a simple 'host' to use the configured port.$$ *($$List$$, default: `$$[127.0.0.1:9042]$$`)* $$spring.data.cassandra.fetch-size$$:: $$$$ *($$Integer$$, default: `$$$$`)* $$spring.data.cassandra.keyspace-name$$:: $$Keyspace name to use.$$ *($$String$$, default: `$$$$`)* $$spring.data.cassandra.local-datacenter$$:: $$Datacenter that is considered "local". Contact points should be from this datacenter.$$ *($$String$$, default: `$$$$`)* diff --git a/applications/sink/counter-sink/README.adoc b/applications/sink/counter-sink/README.adoc index 1d68e25d..86a87a1f 100644 --- a/applications/sink/counter-sink/README.adoc +++ b/applications/sink/counter-sink/README.adoc @@ -49,12 +49,6 @@ image::{images-asciidoc}/MicrometerCounterAppStarter.png[Counter Architecture, s == Options //tag::configuration-properties[] -$$counter.amount-expression$$:: $$A SpEL expression (against the incoming Message) to derive the amount to add to the counter. If not set the counter is incremented by 1.0$$ *($$Expression$$, default: `$$$$`)* -$$counter.message-counter-enabled$$:: $$Enables counting the number of messages processed. Uses the 'message.' counter name prefix to distinct it form the expression based counter. The message counter includes the fixed tags when provided.$$ *($$Boolean$$, default: `$$true$$`)* -$$counter.name$$:: $$The name of the counter to increment. The 'name' and 'nameExpression' are mutually exclusive. Only one can be set.$$ *($$String$$, default: `$$$$`)* -$$counter.name-expression$$:: $$A SpEL expression (against the incoming Message) to derive the name of the counter to increment. The 'name' and 'nameExpression' are mutually exclusive. Only one can be set.$$ *($$Expression$$, default: `$$$$`)* -$$counter.tag.expression$$:: $$Computes tags from SpEL expression. Single SpEL expression can produce an array of values, which in turn means distinct name/value tags. Every name/value tag will produce a separate counter increment. Tag expression format is: counter.tag.expression.[tag-name]=[SpEL expression]$$ *($$Map$$, default: `$$$$`)* -$$counter.tag.fixed$$:: $$Custom tags assigned to every counter increment measurements. This is a map so the property convention fixed tags is: counter.tag.fixed.[tag-name]=[tag-value]$$ *($$Map$$, default: `$$$$`)* //end::configuration-properties[] //end::ref-doc[] diff --git a/applications/sink/rabbit-sink/README.adoc b/applications/sink/rabbit-sink/README.adoc index d2d06bf0..872d260b 100644 --- a/applications/sink/rabbit-sink/README.adoc +++ b/applications/sink/rabbit-sink/README.adoc @@ -10,19 +10,11 @@ The **$$rabbit$$** $$sink$$ has the following options: (See the Spring Boot documentation for RabbitMQ connection properties) //tag::configuration-properties[] -$$rabbit.converter-bean-name$$:: $$The bean name for a custom message converter; if omitted, a SimpleMessageConverter is used. If 'jsonConverter', a Jackson2JsonMessageConverter bean will be created for you.$$ *($$String$$, default: `$$$$`)* -$$rabbit.exchange$$:: $$Exchange name - overridden by exchangeNameExpression, if supplied.$$ *($$String$$, default: `$$$$`)* -$$rabbit.exchange-expression$$:: $$A SpEL expression that evaluates to an exchange name.$$ *($$Expression$$, default: `$$$$`)* -$$rabbit.mapped-request-headers$$:: $$Headers that will be mapped.$$ *($$String[]$$, default: `$$[*]$$`)* -$$rabbit.own-connection$$:: $$When true, use a separate connection based on the boot properties.$$ *($$Boolean$$, default: `$$false$$`)* -$$rabbit.persistent-delivery-mode$$:: $$Default delivery mode when 'amqp_deliveryMode' header is not present, true for PERSISTENT.$$ *($$Boolean$$, default: `$$false$$`)* -$$rabbit.routing-key$$:: $$Routing key - overridden by routingKeyExpression, if supplied.$$ *($$String$$, default: `$$$$`)* -$$rabbit.routing-key-expression$$:: $$A SpEL expression that evaluates to a routing key.$$ *($$Expression$$, default: `$$$$`)* -$$spring.rabbitmq.addresses$$:: $$Comma-separated list of addresses to which the client should connect.$$ *($$String$$, default: `$$$$`)* +$$spring.rabbitmq.addresses$$:: $$Comma-separated list of addresses to which the client should connect. When set, the host and port are ignored.$$ *($$String$$, default: `$$$$`)* $$spring.rabbitmq.connection-timeout$$:: $$Connection timeout. Set it to zero to wait forever.$$ *($$Duration$$, default: `$$$$`)* -$$spring.rabbitmq.host$$:: $$RabbitMQ host.$$ *($$String$$, default: `$$localhost$$`)* +$$spring.rabbitmq.host$$:: $$RabbitMQ host. Ignored if an address is set.$$ *($$String$$, default: `$$localhost$$`)* $$spring.rabbitmq.password$$:: $$Login to authenticate against the broker.$$ *($$String$$, default: `$$guest$$`)* -$$spring.rabbitmq.port$$:: $$RabbitMQ port.$$ *($$Integer$$, default: `$$5672$$`)* +$$spring.rabbitmq.port$$:: $$RabbitMQ port. Ignored if an address is set. Default to 5672, or 5671 if SSL is enabled.$$ *($$Integer$$, default: `$$$$`)* $$spring.rabbitmq.publisher-confirm-type$$:: $$Type of publisher confirms to use.$$ *($$ConfirmType$$, default: `$$$$`, possible values: `SIMPLE`,`CORRELATED`,`NONE`)* $$spring.rabbitmq.publisher-returns$$:: $$Whether to enable publisher returns.$$ *($$Boolean$$, default: `$$false$$`)* $$spring.rabbitmq.requested-channel-max$$:: $$Number of channels per connection requested by the client. Use 0 for unlimited.$$ *($$Integer$$, default: `$$2047$$`)* diff --git a/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/OwnConnectionTest.java b/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/OwnConnectionTest.java index e81d2b8e..a2e5f21f 100644 --- a/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/OwnConnectionTest.java +++ b/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/OwnConnectionTest.java @@ -16,19 +16,11 @@ package org.springframework.cloud.stream.app.rabbit.sink; -import java.util.function.Consumer; - -import com.github.dockerjava.api.command.CreateContainerCmd; -import com.github.dockerjava.api.model.ExposedPort; -import com.github.dockerjava.api.model.PortBinding; -import com.github.dockerjava.api.model.Ports; -import org.junit.ClassRule; import org.junit.jupiter.api.Test; import org.springframework.amqp.core.Message; import org.springframework.amqp.core.Queue; import org.springframework.integration.support.MessageBuilder; import org.springframework.test.context.TestPropertySource; -import org.testcontainers.containers.GenericContainer; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.Assert.assertEquals; diff --git a/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/RabbitSinkInvalidConfigTests.java b/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/RabbitSinkInvalidConfigTests.java index f02324ad..a47cf909 100644 --- a/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/RabbitSinkInvalidConfigTests.java +++ b/applications/sink/rabbit-sink/src/test/java/org/springframework/cloud/stream/app/rabbit/sink/RabbitSinkInvalidConfigTests.java @@ -36,13 +36,12 @@ import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.instanceOf; import static org.junit.Assert.fail; -import io.pivotal.java.function.rabbit.consumer.RabbitConsumerProperties; - import org.junit.jupiter.api.Test; import org.springframework.beans.factory.BeanCreationException; import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.bind.validation.BindValidationException; import org.springframework.boot.context.properties.bind.validation.ValidationErrors; +import org.springframework.cloud.fn.consumer.rabbit.RabbitConsumerProperties; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Configuration; import org.springframework.validation.FieldError; diff --git a/applications/source/file-source/README.adoc b/applications/source/file-source/README.adoc index 66209c20..c9b2a942 100644 --- a/applications/source/file-source/README.adoc +++ b/applications/source/file-source/README.adoc @@ -20,14 +20,6 @@ The payload of these 2 additional marker messages is of type `FileSplitter.FileM The **$$file$$** $$source$$ has the following options: //tag::configuration-properties[] -$$file.consumer.markers-json$$:: $$When 'fileMarkers == true', specify if they should be produced as FileSplitter.FileMarker objects or JSON.$$ *($$Boolean$$, default: `$$true$$`)* -$$file.consumer.mode$$:: $$The FileReadingMode to use for file reading sources. Values are 'ref' - The File object, 'lines' - a message per line, or 'contents' - the contents as bytes.$$ *($$FileReadingMode$$, default: `$$$$`, possible values: `ref`,`lines`,`contents`)* -$$file.consumer.with-markers$$:: $$Set to true to emit start of file/end of file marker messages before/after the data. Only valid with FileReadingMode 'lines'.$$ *($$Boolean$$, default: `$$$$`)* -$$file.supplier.delay-when-empty$$:: $$Duration of delay when no new files are detected.$$ *($$Duration$$, default: `$$1s$$`)* -$$file.supplier.directory$$:: $$The directory to poll for new files.$$ *($$File$$, default: `$$$$`)* -$$file.supplier.filename-pattern$$:: $$A simple ant pattern to match files.$$ *($$String$$, default: `$$$$`)* -$$file.supplier.filename-regex$$:: $$A regex pattern to match files.$$ *($$Pattern$$, default: `$$$$`)* -$$file.supplier.prevent-duplicates$$:: $$Set to true to include an AcceptOnceFileListFilter which prevents duplicates.$$ *($$Boolean$$, default: `$$true$$`)* //end::configuration-properties[] //end::ref-doc[] diff --git a/applications/source/http-source/README.adoc b/applications/source/http-source/README.adoc index 143d8d45..29b2479e 100644 --- a/applications/source/http-source/README.adoc +++ b/applications/source/http-source/README.adoc @@ -20,11 +20,6 @@ If content type does not match `text/*` or `application/json` The **$$http$$** $$source$$ supports the following configuration properties: //tag::configuration-properties[] -$$http.cors.allow-credentials$$:: $$Whether the browser should include any cookies associated with the domain of the request being annotated.$$ *($$Boolean$$, default: `$$$$`)* -$$http.cors.allowed-headers$$:: $$List of request headers that can be used during the actual request.$$ *($$String[]$$, default: `$$$$`)* -$$http.cors.allowed-origins$$:: $$List of allowed origins, e.g. "http://domain1.com".$$ *($$String[]$$, default: `$$$$`)* -$$http.mapped-request-headers$$:: $$Headers that will be mapped.$$ *($$String[]$$, default: `$$$$`)* -$$http.path-pattern$$:: $$HTTP endpoint path mapping.$$ *($$String$$, default: `$$/$$`)* $$server.port$$:: $$Server HTTP port.$$ *($$Integer$$, default: `$$8080$$`)* //end::configuration-properties[] diff --git a/applications/source/jdbc-source/README.adoc b/applications/source/jdbc-source/README.adoc index 78dd7544..dc3711c6 100644 --- a/applications/source/jdbc-source/README.adoc +++ b/applications/source/jdbc-source/README.adoc @@ -13,10 +13,6 @@ This source is fully based on the `DataSourceAutoConfiguration`, so refer to the The **$$jdbc$$** $$source$$ has the following options: //tag::configuration-properties[] -$$jdbc.supplier.max-rows$$:: $$Max numbers of rows to process for query.$$ *($$Integer$$, default: `$$0$$`)* -$$jdbc.supplier.query$$:: $$The query to use to select data.$$ *($$String$$, default: `$$$$`)* -$$jdbc.supplier.split$$:: $$Whether to split the SQL result as individual messages.$$ *($$Boolean$$, default: `$$true$$`)* -$$jdbc.supplier.update$$:: $$An SQL update statement to execute for marking polled messages as 'seen'.$$ *($$String$$, default: `$$$$`)* $$spring.cloud.stream.poller.cron$$:: $$Cron expression value for the Cron Trigger.$$ *($$String$$, default: `$$$$`)* $$spring.cloud.stream.poller.fixed-delay$$:: $$Fixed delay for default poller.$$ *($$Long$$, default: `$$1000$$`)* $$spring.cloud.stream.poller.initial-delay$$:: $$Initial delay for periodic triggers.$$ *($$Integer$$, default: `$$0$$`)* diff --git a/applications/source/time-source/README.adoc b/applications/source/time-source/README.adoc index 9358c5ce..a7e2ae14 100644 --- a/applications/source/time-source/README.adoc +++ b/applications/source/time-source/README.adoc @@ -12,7 +12,6 @@ $$spring.cloud.stream.poller.cron$$:: $$Cron expression value for the Cron Trigg $$spring.cloud.stream.poller.fixed-delay$$:: $$Fixed delay for default poller.$$ *($$Long$$, default: `$$1000$$`)* $$spring.cloud.stream.poller.initial-delay$$:: $$Initial delay for periodic triggers.$$ *($$Integer$$, default: `$$0$$`)* $$spring.cloud.stream.poller.max-messages-per-poll$$:: $$Maximum messages per poll for the default poller.$$ *($$Long$$, default: `$$1$$`)* -$$time.date-format$$:: $$Format for the date value.$$ *($$String$$, default: `$$MM/dd/yy HH:mm:ss$$`)* //end::configuration-properties[] //end::ref-doc[]