public CompletionAction Handle(Message <int, Widget> message)
        {
            int numberOfWidgets = message.Need;

            message.Solution = WidgetStore.Get().Take(numberOfWidgets).ToArray();

            queueWrapper.PublishMessage(message);

            return(CompletionAction.DoNothing);
        }
Esempio n. 2
0
        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);
        }