public async Task <ActionResult> UpdateConfiguration(EditConfigRequestModel updateRequest)
        {
            try
            {
                IConfigurationUpdateRequest  updateConfigurationRequest  = new ConfigurationUpdateRequest(updateRequest.Key, updateRequest.Value);
                IConfigurationUpdateResponse configurationUpdateResponse = await _configurationUpdater.UpdateConfiguration(updateConfigurationRequest);

                return(PrepareResponseAfterUpdateConfigurationResponse(configurationUpdateResponse));
            }
            catch (Exception ex)
            {
                _logger.Log(ex);
                return(StatusCode(500));
            }
        }
        private ActionResult PrepareResponseAfterUpdateConfigurationResponse(IConfigurationUpdateResponse configurationUpdateResponse)
        {
            switch (configurationUpdateResponse.ResponseEnum)
            {
            case ConfigurationUpdateResponseEnum.Exception:
                return(StatusCode(500));

            case ConfigurationUpdateResponseEnum.Success:
                return(StatusCode(200, _objectToApiModelConverter.ConvertConfiguration(configurationUpdateResponse.Configuration)));

            case ConfigurationUpdateResponseEnum.NotFound:
                return(StatusCode(404));

            case ConfigurationUpdateResponseEnum.BadRequest:
                return(StatusCode(400));

            default:
                throw new ArgumentOutOfRangeException();
            }
        }