-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Better documentation for writing custom channel adapters for JavaDSL #3725
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
Comments
Just to be sure that we are on the same page: writing channel adapters is fully irrelevant if they are used in Java DSL or not. To be honest we don't provide such a guidance because we don't expect it to be regular task for framework users. Anyway, we will look into this in the nearest future. Thank you! |
It's just super hard to understand if some channel adapter fits my use case. For example if I want to know whether some channel adapter fits my need, for example the S3 message handler, I need to somehow understand if |
See this docs: https://docs.spring.io/spring-integration/docs/current/reference/html/reactive-streams.html#reactive-reply-payload for some insight. I agree that we lack some clearer documentation on the matter yet, so that why this issue is accepted for improvement for the current version. |
Yes, we are planning to address this issue in the current |
Expected Behavior
I think there should be an
how to write channel adapter
guide with examples for:There should be super simple examples for writing each with the JavaDSL, and more important - explanations about the interfaces that are required for each usage (and which ones are supported with nio Reactive Programming). Such as:
MessageProducerSupport
AbstractMessageSource
AbstractReactiveMessageHandler
AbstractMessageHandler
AbstractReplyProducingMessageHandler
and more (I don't know of more relevant interfaces, this is one of the reasons I'm raising this issue).
There should be examples for the differences between them and use cases for each.
Current Behavior
It's pretty hard to understand what are the correct interfaces that we should use in each case of writing channel adapters with the Java DSL. I think there should be a better guide for writing custom channel adapters (since there are not so many channel adapters, writing custom ones is a pretty common task, if not the most common task when using Spring Integration).
Context
The reference doesn't mention any of the JavaDSL channel adapter interfaces, so that's super hard to understand the purpose of each interface and what fits my needs. The only solution what diving into the source code, which has inconsistency between channel adapters (some channel adapters name is
XInboundChannelAdapter
, and some channel adapters name isXMessageProducer
. I know that there may be some reasons and conventions to it, but this whole part is just not documented).The text was updated successfully, but these errors were encountered: