public Task Handle(RegisterKeeperCommand command, IMessageHandlerContext context)
        {
            Console.WriteLine($"Received register keeper command {command.ToString()}");
            var keeper = new KeeperAggregate(command.FirstName, command.LastName);

            keeper.Save();

            var keeperRegistered = new KeeperRegistered
            {
                KeeperId = keeper.KeeperId
            };

            Console.WriteLine($"Publishing KeeperRegistered, KeeperId = {keeper.KeeperId}");

            return(context.Publish(keeperRegistered));
        }
        public Task Handle(RegisterTrailersCommand command, IMessageHandlerContext context)
        {
            Console.WriteLine($"Received register trailers command {command.ToString()}");
            var keeper   = new KeeperAggregate(command.KeeperId);
            var trailers = new List <Guid>();

            foreach (var trailer in command.Trailers)
            {
                trailers.Add(keeper.RegisterTrailer(trailer.Vin, trailer.Manufacturer, trailer.Weight));
            }

            keeper.Save();

            var trailersRegistered = new TrailersRegistered
            {
                KeeperId = keeper.KeeperId,
                Trailers = trailers
            };

            Console.WriteLine($"Publishing TrailersRegistered, KeeperId = {keeper.KeeperId}");

            return(context.Publish(trailersRegistered));
        }