Skip to content

Commit 5b1858e

Browse files
feat: upgraded library versions, better support for Solace queues (#119)
* We how handle smf bindings properly. * Updated readme, fixed linter problems. * Simplified functions to make sonarcloud happy. * Fixed linter problems. * Removed unused topicInfo filter. * Removed dead code. Co-authored-by: Michael Davis <[email protected]>
1 parent 768f9cd commit 5b1858e

File tree

8 files changed

+265
-283
lines changed

8 files changed

+265
-283
lines changed

README.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,10 @@ It is possible to override this, see the 'view' parameter in the parameters sect
1515

1616
### Which Methods are created
1717
The template works as follows:
18-
* By default for each channel in the AsyncAPI document, if there is a _publish_ operation a _Supplier_ method will be generated, and for a _subscribe_ operation a _Consumer_ method will get generated.
18+
* By default for each channel in the AsyncAPI document, if there is a _subscribe_ operation a _Supplier_ method will be generated, and for a _publish_ operation a _Consumer_ method will get generated.
1919
* To customize this default behavior you can make use of the `x-scs-function-name` extension. If one _publish_ operation and one _subscribe_ operation share a `x-scs-function-name` attribute then a _java.util.function.Function_ method will be created which uses the _subscribe_ operation's message as the input and the _publish_ operation's message as the output to the generated Function method. It will also wire up the proper channel information in the generated application.yaml file.
20-
* Note that at this time the generator does not support the creation of functions that have more than one _publish_ and/or more than one _subscribe_ operation with the same ```x-scs-function-name``` attribute. This scenario will result in error.
20+
* Note that at this time the generator does not support the creation of functions that have more than one _publish_ and/or more than one _subscribe_ operation with the same ```x-scs-function-name``` attribute. This scenario will result in error.
21+
* Additionally, if a channel has parameters and a _subscribe_ operation, a method will be generated that takes the payload and the parameters as function arguments, formats the topic from the parameters, and sends the message using the StreamBridge as described in the [Spring Cloud Steam](https://docs.spring.io/spring-cloud-stream/docs/3.1.3/reference/html/spring-cloud-stream.html#_streambridge_and_dynamic_destinations) documentation.
2122

2223

2324
### Method Naming
@@ -93,7 +94,7 @@ password | | default | The client password connection property. Currently this o
9394
reactive | | false | If true, the generated functions will use the Reactive style and use the Flux class.
9495
solaceSpringCloudVersion | info.x-solace-spring-cloud-version | 1.0.0 | The version of the solace-spring-cloud-bom dependency used when generating an application.
9596
springBootVersion | info.x-spring-boot-version | 2.2.6.RELEASE | The version of Spring Boot used when generating an application.
96-
springCloudVersion | info.x-spring-cloud-version | Hoxton.SR3 | The version of the spring-cloud-dependencies BOM dependency used when generating an application.
97+
springCloudVersion | info.x-spring-cloud-version | Hoxton.SR3 | The version of the spring-cloud-dependencies BOM dependency used when generating an application.
9798
springCloudStreamVersion | info.x-spring-cloud-stream-version | 3.0.3.RELEASE | The version of the spring-cloud-stream dependency specified in the Maven file, when generating a library. When generating an application, the spring-cloud-dependencies BOM is used instead
9899
username | | default | The client username connection property. Currently this only works with the Solace binder. When other binders are used this parameter is ignored.
99100
view | info.x-view | client | By default, this template generates publisher code for subscribe operations and vice versa. You can switch this by setting this parameter to 'provider'.

0 commit comments

Comments
 (0)