-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add AWS SNS Plugin #392
Add AWS SNS Plugin #392
Conversation
✅ Deploy Preview for springwolf-ui canceled.
|
0ce8dd9
to
8687385
Compare
This is great! If possible, we like to merge #386 first, which will have an impact on this PR as well. Can you add SNS also to:
|
d4244a7
to
856eb08
Compare
@timonback I just saw #370 which is a great addition. Since this plugin is only adding a new SNS is intended for publishing only, and AFAICT there's no AWS annotation for binding it. So this plugin can be easily be replaced by the new |
856eb08
to
35fb606
Compare
Good question. I wasn't aware that there is no snslistener, but instead theses would be sqs queues. I like the native support of a protocol specific annotations, namely SnsAsyncOperationBinding - even if jAsyncApi does not support further binding info. When implementing sqs, I wondered if sns should be part of the same plugin as well or whether the plugin should be called aws... An own plugin just for the annotation might be too much. |
SNS can be processed via SQS, HTTP,... so including it in the SQS plugin may make sense, but so adding it to a generic/core library with other bindings like Google PubSub, for example |
Although AsyncAPI allows to add more details for the binding, the underlying library jAsyncApi has no support for further binding information. Therefore, only the sns binding without properties is supported. Manual configuration is supported through the usual `@AsyncPublisher` annotation in combination with the `@SnsAsyncOperationBinding` annotation. The code is mostly copied and adjusted based on the other plugins.
…ead of component scanning Co-authored-by: Timon Back <[email protected]>
35fb606
to
b1b81f1
Compare
The change has been merged and will be part of the next release as a new plugin :) If you want to try and verify it in your application, use the current Thank you for the report/contribution! |
For context: We decided that we like to extend our support of native supports, therefore adding the custom annotation in favour of having the user figure out which properties to set on the generic binding. |
Although AsyncAPI allows to add more details for the binding, the underlying library jAsyncApi has no support for further binding information. Therefore, only the sns binding without properties is supported.
Manual configuration is supported through the usual
@AsyncPublisher
annotation in combination with the@SnsAsyncOperationBinding
annotation.The code is mostly copied and adjusted based on the other plugins.