Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between Consumes.For, Consumes.Selected, Consumes.All and Consumes.Context in MassTransit?

Tags:

masstransit

I've started looking at MassTransit and am writing the classes that will handle the messages. When I implement the interface from Consumes<T> I get four options: All, Selected, For<T> and Context. What is the difference between the four and when should them be used?

like image 316
Tomas Jansson Avatar asked Jul 11 '13 08:07

Tomas Jansson


1 Answers

All just gives you all the messages to consume. Context is All but you also get the Context<TMessage> if you need it. Selected allows you to accept or reject messages before it gets to your consumer. For<T> is primarily for Sagas, I don't think there's a good use case for it outside of that.

Starting off, just using All is likely the right answer.

like image 189
Travis Avatar answered Oct 29 '22 11:10

Travis