public async Task <ActionResult <MediaTypeApiModel> > Put(int id, [FromBody] MediaTypeApiModel input,
                                                                  CancellationToken ct = default)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }
                if (await _chinookSupervisor.GetMediaTypeByIdAsync(id, ct) == null)
                {
                    return(NotFound());
                }

                var errors = JsonConvert.SerializeObject(ModelState.Values
                                                         .SelectMany(state => state.Errors)
                                                         .Select(error => error.ErrorMessage));
                Debug.WriteLine(errors);

                if (await _chinookSupervisor.UpdateMediaTypeAsync(input, ct))
                {
                    return(Ok(input));
                }

                return(StatusCode(500));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }
示例#2
0
        public ActionResult <MediaTypeApiModel> Put([FromRoute] int id, [FromBody] MediaTypeApiModel input)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }
                if (_chinookSupervisor.GetMediaTypeById(id) == null)
                {
                    return(NotFound());
                }

                // var errors = JsonConvert.SerializeObject(ModelState.Values
                //     .SelectMany(state => state.Errors)
                //     .Select(error => error.ErrorMessage));
                // Debug.WriteLine(errors);

                if (_chinookSupervisor.UpdateMediaType(input))
                {
                    return(Ok(input));
                }

                return(StatusCode(500));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }
        public async Task <MediaTypeApiModel> AddMediaTypeAsync(MediaTypeApiModel newMediaTypeApiModel,
                                                                CancellationToken ct = default)
        {
            var mediaType = new MediaType
            {
                Name = newMediaTypeApiModel.Name
            };

            mediaType = await _mediaTypeRepository.AddAsync(mediaType, ct);

            newMediaTypeApiModel.MediaTypeId = mediaType.MediaTypeId;
            return(newMediaTypeApiModel);
        }
示例#4
0
        public bool UpdateMediaType(MediaTypeApiModel mediaTypeApiModel)
        {
            var mediaType = _mediaTypeRepository.GetById(mediaTypeApiModel.MediaTypeId);

            if (mediaType == null)
            {
                return(false);
            }
            mediaType.MediaTypeId = mediaTypeApiModel.MediaTypeId;
            mediaType.Name        = mediaTypeApiModel.Name;

            return(_mediaTypeRepository.Update(mediaType));
        }
示例#5
0
        public MediaTypeApiModel AddMediaType(MediaTypeApiModel newMediaTypeApiModel)
        {
            /*var mediaType = new MediaType
             * {
             *  Name = newMediaTypeApiModel.Name
             * };*/

            var mediaType = newMediaTypeApiModel.Convert();

            mediaType = _mediaTypeRepository.Add(mediaType);
            newMediaTypeApiModel.MediaTypeId = mediaType.MediaTypeId;
            return(newMediaTypeApiModel);
        }
        public async Task <bool> UpdateMediaTypeAsync(MediaTypeApiModel mediaTypeApiModel,
                                                      CancellationToken ct = default)
        {
            var mediaType = await _mediaTypeRepository.GetByIdAsync(mediaTypeApiModel.MediaTypeId, ct);

            if (mediaType == null)
            {
                return(false);
            }
            mediaType.MediaTypeId = mediaTypeApiModel.MediaTypeId;
            mediaType.Name        = mediaTypeApiModel.Name;

            return(await _mediaTypeRepository.UpdateAsync(mediaType, ct));
        }
示例#7
0
        public ActionResult <MediaTypeApiModel> Post([FromBody] MediaTypeApiModel input)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }

                return(StatusCode(201, _chinookSupervisor.AddMediaType(input)));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }
        public async Task <ActionResult <MediaTypeApiModel> > Post([FromBody] MediaTypeApiModel input,
                                                                   CancellationToken ct = default)
        {
            try
            {
                if (input == null)
                {
                    return(BadRequest());
                }

                return(StatusCode(201, await _chinookSupervisor.AddMediaTypeAsync(input, ct)));
            }
            catch (Exception ex)
            {
                return(StatusCode(500, ex));
            }
        }