Exemple #1
0
        private async void ProcessPolicyCreatedMessage(Task <BrokeredMessage> t)
        {
            BrokeredMessage message = t.Result;

            try
            {
                // Process message from subscription.
                Console.WriteLine("\n**PolicyIssued**");

                var @event = message.GetBody <PolicyCreatedEvent>();
                Console.WriteLine("Body: " + @event.PolicyNumber);
                Console.WriteLine("StreamRevision: " + message.Properties["StreamRevision"]);
                var policy = new InsurancePolicy(null); //Yuck!
                policy.ApplyEvent(@event);
                CreateVersionOfPolicy(policy);

                // Remove message from subscription.
                await message.CompleteAsync();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                // Indicates a problem, unlock message in subscription.
                message.Abandon();
            }
        }