public CompletionAction Handle(Message <int, Widget> message) { int numberOfWidgets = message.Need; message.Solution = WidgetStore.Get().Take(numberOfWidgets).ToArray(); queueWrapper.PublishMessage(message); return(CompletionAction.DoNothing); }
public CompletionAction Handle(Message <Widget[], string> message) { Widget[] widgetsToProcess = message.Need; message.Solution = new string[widgetsToProcess.Length]; for (int n = 0; n < widgetsToProcess.Length; n++) { Widget widget = widgetsToProcess[n]; message.Solution[n] = widget.Process(); WidgetStore.Put(widget); } queueWrapper.PublishMessage(message); return(CompletionAction.DoNothing); }