/// <inheritdoc/> async Task<AmazonNode> IAmazonFiles.UploadNew(FileUpload fileUpload) { var url = string.Format("{0}nodes", await GetContentUrl().ConfigureAwait(false)); if (fileUpload.AllowDuplicate) { url += "?suppress=deduplication"; } var obj = new NewChild { name = fileUpload.FileName, parents = new string[] { fileUpload.ParentId }, kind = "FILE" }; var meta = JsonConvert.SerializeObject(obj); var file = new SendFileInfo { StreamOpener = fileUpload.StreamOpener, FileName = fileUpload.FileName, FormName = "content", CancellationToken = fileUpload.CancellationToken, BufferSize = fileUpload.BufferSize, Progress = fileUpload.Progress, Parameters = new Dictionary<string, string> { { "metadata", meta } } }; return await http.SendFile<AmazonNode>(HttpMethod.Post, url, file).ConfigureAwait(false); }
/// <inheritdoc/> async Task <FileUploadResult> IAmazonFiles.Overwrite(FileUpload fileUpload) { return(await((IAmazonFiles)this).UploadNew(fileUpload).ConfigureAwait(false)); }