Example #1
0
        public async Task <IActionResult> Delete(DeleteResourceModel deleteResourceModel)
        {
            _logger.LogTrace($"Deletion of object on path {deleteResourceModel.Path}");

            if (string.IsNullOrWhiteSpace(deleteResourceModel.Path))
            {
                return(BadRequest("You must specify resource you want to delete"));
            }

            var additionalParameters = new Dictionary <string, object>()
            {
                { "version", deleteResourceModel.Version }
            };

            var result = await _fileRepository.RemoveFile(deleteResourceModel.Path, additionalParameters);

            if (result.IsSuccess)
            {
                return(Ok());
            }
            return(BadRequest(result.Message));
        }
Example #2
0
        public async Task <Link> DeleteAsync(DeleteResourceModel model)
        {
            ThrowIfNullArgument(model);

            string url = model.RequestUrl(api);

            using (var response = await client.DeleteAsync(url).ConfigureAwait(false))
            {
                if (response.StatusCode == HttpStatusCode.NoContent)
                {
                    return(null);
                }
                else if (response.StatusCode == HttpStatusCode.Accepted)
                {
                    return(await ReadAsAsync <Link>(response).ConfigureAwait(false));
                }
                else
                {
                    var error = await ReadAsAsync <ErrorResponse>(response).ConfigureAwait(false);

                    throw new HttpDiskException(error);
                }
            }
        }