Example #1
0
        public async Task <UpdateVehicleResponse> Handle(
            UpdateVehicleRequest request,
            CancellationToken cancellationToken)
        {
            var vehicle = new Vehicle(
                request.Brand,
                request.Model,
                new Color(request.Color),
                new LicensePlate(request.LicensePlate),
                request.Type
                );

            var result = _repository.Update(vehicle.ToDataEntity(request.Id));

            _repository.CommitChanges();

            return(await Task.FromResult(new UpdateVehicleResponse(
                                             result.Id,
                                             result.Brand,
                                             result.Model,
                                             result.Color,
                                             result.LicensePlate,
                                             result.Type
                                             )));
        }
Example #2
0
        public async Task <CreateVehicleResponse> Handle(
            CreateVehicleRequest request,
            CancellationToken cancellationToken)
        {
            var vehicle = new Vehicle(
                request.Brand,
                request.Model,
                new Color(request.Color),
                new LicensePlate(request.LicensePlate),
                VehicleType.Car
                );

            var result = await _repository.Create(vehicle.ToDataEntity());

            _repository.CommitChanges();

            return(new CreateVehicleResponse(
                       result.Id,
                       result.Brand,
                       result.Model,
                       result.Color,
                       result.LicensePlate,
                       result.Type
                       ));
        }