Example #1
0
        public async Task <GetStringInSetByStringSetAndPositionResponse> Handle(GetStringInSetByStringSetAndPositionRequest request, CancellationToken cancellationToken)
        {
            var query = new GetStringInSetByStringSetAndPositionQuery()
            {
                StringPosition = request.StringPosition,
                StringSetID    = request.StringSetID
            };
            var stringInSet = await this.queryExecutor.Execute(query);

            if (stringInSet.StringPosition == request.StringPosition && stringInSet.StringSetID == request.StringSetID)
            {
                return new GetStringInSetByStringSetAndPositionResponse()
                       {
                           Data = null
                       }
            }
            ;
            var mappedStringInSet = mapper.Map <Domain.Models.StringInSet>(stringInSet);
            var response          = new GetStringInSetByStringSetAndPositionResponse()
            {
                Data = mappedStringInSet
            };

            return(response);
        }
    }
Example #2
0
        public async Task <UpdateStringInSetResponse> Handle(UpdateStringInSetRequest request, CancellationToken cancellationToken)
        {
            var query = new GetStringInSetByStringSetAndPositionQuery()
            {
                StringPosition = request.routeStringPosition,
                StringSetID    = request.routeStringSetID
            };
            var gotStringInSet = await this.queryExecutor.Execute(query);

            if (gotStringInSet == null)
            {
                return new UpdateStringInSetResponse()
                       {
                           Data = null
                       }
            }
            ;
            var command = new UpdateStringInSetCommand()
            {
                Parameter = this.mapper.Map(request, gotStringInSet)
            };
            var stringInSet = await this.commandExecutor.Execute(command);

            return(new UpdateStringInSetResponse()
            {
                Data = this.mapper.Map <Domain.Models.StringInSet>(stringInSet)
            });
        }
    }