static Task HandleMessage(MXEntity messageInput) { return(Task.Run(() => { var message = messageInput as MXEmployee; Console.WriteLine("-----------------Processing now...-----------------"); Thread.Sleep(2000); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine("Id: {0}\nName: {1}\nSkills: {2}", message.Id, message.Name, string.Join(", ", message.Skills)); Console.ResetColor(); Console.WriteLine("\n-----------------Processing Complete..-----------------"); })); }
static MXEmployeeQueueResponse RespondInRPCWay(MXEntity messageInput) { var message = messageInput as MXEmployee; MXEmployeeQueueResponse response; Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine("Message received is as:"); Console.WriteLine("Id: {0}\nName: {1}\nSkills: {2}", message.Id, message.Name, string.Join(", ", message.Skills)); Console.ResetColor(); Console.WriteLine("-----------------Processing RPC ...-----------------"); //doing something with the message now response = new MXEmployeeQueueResponse { Employee = message }; response.Employee.Skills.Add("Solr Search"); Console.WriteLine("\n-----------------Processing RPC Complete..-----------------"); return(response); }