NSaga icon indicating copy to clipboard operation
NSaga copied to clipboard

Add Async Support on the CosumeOf Interface

Open kdcllc opened this issue 8 years ago • 3 comments

I would like to see support for the async and await pattern thru the layers up to ConsumOf interface and its implementation. I am running with such in with one of my client.

kdcllc avatar Jul 20 '17 10:07 kdcllc

That is a fine idea and I think I looked into that initially, but I have not implemented it because it involved significant amount of work. I remember I have tried it but got blocked by some of the async api and could not resolve that in short enough time, so I dropped it.

In principle, yes, it'll be great. In practice I'm very busy just now and no time to implement it in any forceible future.

trailmax avatar Jul 20 '17 14:07 trailmax

@kdcllc I had a quick-stub at async functionality - available in async branch. Unfortunately async turtles all the way down. See this test. A lot of issues here:

  • A lot of breaking changes - need async methods on interfaces ISagaMediator, ISagaFactory.
  • Most likely will need IAsyncSagaMessage and IAsyncInitiatingSagaMessage to be sure the correct method is called with appropriate await
  • Possible wad of other changes that I don't see just now.

Basically will have to rewrite the whole thing from scratch and double the public API surface. As I suspected before this is a lot of work and time that I don't have just now.

trailmax avatar Jul 26 '17 01:07 trailmax

@trailmax, That what I thought. I do not have time at the moment as well, so I have wrap the code in the async tasks for now. Thanks!

kdcllc avatar Jul 31 '17 02:07 kdcllc