private async Task <UploadJsonDto> UploadJson(string fileName, Stream stream, bool isShared) { var jsonFileMetadata = new Google.Apis.Drive.v3.Data.File { Name = $"{fileName}.json" }; var jsonFileRequest = await Upload(fileName, jsonFileMetadata, stream, isShared); return(new UploadJsonDto(jsonFileRequest.ResponseBody.Id, jsonFileRequest.ResponseBody.WebContentLink)); }
private async Task <string> UploadFile(string fileName, string fileExtension, Stream stream, string jsonFileId, bool isShared) { var encryptedFileMetadata = new Google.Apis.Drive.v3.Data.File { Name = fileName + fileExtension, AppProperties = new Dictionary <string, string> { { "JsonFileId", jsonFileId } } }; var encryptedFileRequest = await Upload(fileName, encryptedFileMetadata, stream, isShared); return(encryptedFileRequest.ResponseBody.WebContentLink); }
private async Task <FilesResource.CreateMediaUpload> Upload(string fileName, Google.Apis.Drive.v3.Data.File fileMetadata, Stream stream, bool isShared) { var mimeType = MimeTypesMap.GetMimeType($"{fileName}.json"); var fileRequest = _driveService.Files.Create(fileMetadata, stream, mimeType); fileRequest.Fields = "*"; var result = await fileRequest.UploadAsync(); if (result.Status != UploadStatus.Completed) { throw new Exception("Error while uploading json file!"); } if (isShared) { await SetPermissions(fileRequest.ResponseBody.Id); } return(fileRequest); }