コード例 #1
0
        public virtual ApiClaspClientRequestModel MapServerResponseToClientRequest(
            ApiClaspServerResponseModel response)
        {
            var request = new ApiClaspClientRequestModel();

            request.SetProperties(
                response.NextChainId,
                response.PreviousChainId);
            return(request);
        }
コード例 #2
0
        public virtual ApiClaspServerResponseModel MapServerRequestToResponse(
            int id,
            ApiClaspServerRequestModel request)
        {
            var response = new ApiClaspServerResponseModel();

            response.SetProperties(id,
                                   request.NextChainId,
                                   request.PreviousChainId);
            return(response);
        }
コード例 #3
0
        public void MapEntityToModel()
        {
            var   mapper = new DALClaspMapper();
            Clasp item   = new Clasp();

            item.SetProperties(1, 1, 1);
            ApiClaspServerResponseModel response = mapper.MapEntityToModel(item);

            response.Id.Should().Be(1);
            response.NextChainId.Should().Be(1);
            response.PreviousChainId.Should().Be(1);
        }
コード例 #4
0
ファイル: ClaspService.cs プロジェクト: codenesium/samples
        public virtual async Task <UpdateResponse <ApiClaspServerResponseModel> > Update(
            int id,
            ApiClaspServerRequestModel model)
        {
            var validationResult = await this.ClaspModelValidator.ValidateUpdateAsync(id, model);

            if (validationResult.IsValid)
            {
                Clasp record = this.DalClaspMapper.MapModelToEntity(id, model);
                await this.ClaspRepository.Update(record);

                record = await this.ClaspRepository.Get(id);

                ApiClaspServerResponseModel apiModel = this.DalClaspMapper.MapEntityToModel(record);
                await this.mediator.Publish(new ClaspUpdatedNotification(apiModel));

                return(ValidationResponseFactory <ApiClaspServerResponseModel> .UpdateResponse(apiModel));
            }
            else
            {
                return(ValidationResponseFactory <ApiClaspServerResponseModel> .UpdateResponse(validationResult));
            }
        }
コード例 #5
0
ファイル: DALClaspMapper.cs プロジェクト: codenesium/samples
        public virtual ApiClaspServerResponseModel MapEntityToModel(
            Clasp item)
        {
            var model = new ApiClaspServerResponseModel();

            model.SetProperties(item.Id,
                                item.NextChainId,
                                item.PreviousChainId);
            if (item.NextChainIdNavigation != null)
            {
                var nextChainIdModel = new ApiChainServerResponseModel();
                nextChainIdModel.SetProperties(
                    item.NextChainIdNavigation.Id,
                    item.NextChainIdNavigation.ChainStatusId,
                    item.NextChainIdNavigation.ExternalId,
                    item.NextChainIdNavigation.Name,
                    item.NextChainIdNavigation.TeamId);

                model.SetNextChainIdNavigation(nextChainIdModel);
            }

            if (item.PreviousChainIdNavigation != null)
            {
                var previousChainIdModel = new ApiChainServerResponseModel();
                previousChainIdModel.SetProperties(
                    item.PreviousChainIdNavigation.Id,
                    item.PreviousChainIdNavigation.ChainStatusId,
                    item.PreviousChainIdNavigation.ExternalId,
                    item.PreviousChainIdNavigation.Name,
                    item.PreviousChainIdNavigation.TeamId);

                model.SetPreviousChainIdNavigation(previousChainIdModel);
            }

            return(model);
        }
コード例 #6
0
 public ClaspUpdatedNotification(ApiClaspServerResponseModel record)
 {
     this.Record = record;
 }