You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It is impossible to create generic code that use interfaces and then decide to
use the event model (Channel) or queue model (QueueChannel) later.
Proposal: drop the IQueueChannel interface altogether and have QueueChannel
implement IChannel.
Alternative Proposal: have IQueueChannel be the base interface and IChannel
inherit from that.
IQueueChannel has two methods and no sub-interfaces:
* void Publish(T message)
* IDisposable Subscribe(IExecutionContext, Action<T>)
IChannel has the same two methods (note: IExecutionContext is an IFiber in this
case, but IFiber is an IExecutionContext) along with a set of other
subscription models. There is no reason why there has to be the separation.
Original issue reported on code.google.com by [email protected] on 22 Mar 2011 at 5:20
The text was updated successfully, but these errors were encountered:
Not sure on this one.
1) QueueChannel doesn't support many of the methods on IChannel.
2) Not sure how I feel about having IChannel implement IQueueChannel. Perhaps
if we came up with better names?
Original issue reported on code.google.com by
[email protected]
on 22 Mar 2011 at 5:20The text was updated successfully, but these errors were encountered: