Ejemplo n.º 1
0
        public CircleUpdateOutputData Handle(CircleUpdateInputData inputData)
        {
            using var transaction = new TransactionScope();

            var id     = new CircleId(inputData.Id);
            var circle = circleRepository.Find(id);

            if (circle == null)
            {
                throw new CircleNotFoundException(id);
            }

            if (inputData.Name != null)
            {
                var name = new CircleName(inputData.Name);
                circle.ChangeName(name);

                if (circleService.Exists(circle))
                {
                    throw new CanNotRegisterCircleException(circle, "이미 등록된 서클임");
                }
            }

            circleRepository.Save(circle);

            transaction.Complete();

            return(new CircleUpdateOutputData());
        }
Ejemplo n.º 2
0
        public void Put(string id, [FromBody] CirclePutRequestModel request)
        {
            var command = new CircleUpdateInputData(id, request.Name);

            bus.Handle(command);
        }