Exemplo n.º 1
0
        public async Task <GetSoundByIdResponse> Handle(GetSoundByIdRequest request, CancellationToken cancellationToken)
        {
            var query = new GetSoundByIdQuery()
            {
                Id = request.SoundId
            };
            var sound = await this.queryExecutor.Execute(query);

            var mappedSound = this.mapper.Map <Domain.Models.Sound>(sound);
            var response    = new GetSoundByIdResponse()
            {
                Data = mappedSound
            };

            return(response);
        }
        public static async Task <bool> CheckIfCorrect <T>(T request, IQueryExecutor queryExecutor)
            where T : IAddAndUpdateInstalledStringProperties
        {
            var queryNewInstalledString = new GetInstalledStringByPositionAndMyInstrumentQuery()
            {
                MyInstrumentID = request.MyInstrumentID,
                StringPosition = request.StringPosition
            };
            var gotNewInstalledString = await queryExecutor.Execute(queryNewInstalledString);

            var querySound = new GetSoundByIdQuery()
            {
                Id = request.SoundID
            };
            var gotSound = await queryExecutor.Execute(querySound);

            var queryMyInstrument = new GetMyInstrumentByIdQuery()
            {
                Id = request.MyInstrumentID
            };
            var gotMyInstrument = await queryExecutor.Execute(queryMyInstrument);

            var queryString = new GetStringByIdQuery()
            {
                Id = request.StringID
            };
            var gotString = await queryExecutor.Execute(queryString);

            if (gotNewInstalledString == null && gotSound != null && gotMyInstrument != null && gotString != null)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }