A was also wondering whether any thought had been given to representing the handler-endpoints and handler using contained elements like:
Code:
<handler-endpoint input-channel="drinks">
<router ref="drinkRouter" method="resolveDrinkChannel"/>
</handler-endpoint>
or
<handler-endpoint input-channel="drinks">
<handler ref="drinkRouter" method="resolveDrinkChannel"/>
</handler-endpoint>
While more verbose than the config immediately above, it his seems to make the distinction between endpoint and handler much clearly. The handler endpoint is only concerned with input/output channels while the contained handler/router/splitter element defines the handler to invoke.
Also the config for a source-endpoint, which I imagine is something like the following:
Code:
<source-adapter id="my-source-adapter" ref="some-bean" method="some-method"/>
<source-endpoint source="my-source-adapter" channel="some-output-channel">
<schedule period="500"/>
</source-endpoint>
would seem to be more clearly represented by something like (note change of channel attribute to output-channel as well as contained adapter element):
Code:
<source-endpoint output-channel="some-output-channel">
<adapter ref="some-source-bean" method="source-bean-method"/>
<schedule period="500"/>
</source-endpoint>
just my 2 cents, but I'd be interested in feedback.