async Task <mediaItemsCreateResponse?> _UploadMultiple(string[] filePaths, string?albumId = null, GooglePhotosUploadMethod uploadMethod = GooglePhotosUploadMethod.ResumableMultipart) { var uploadItems = new List <UploadItem>(filePaths.Length); foreach (var filePath in filePaths) { var uploadToken = await UploadMediaAsync(filePath, uploadMethod); if (!string.IsNullOrWhiteSpace(uploadToken)) { uploadItems.Add(new UploadItem(uploadToken !, filePath)); } //todo: raise photo uploaded event here } return(await AddMediaItemsAsync(uploadItems, albumId)); }
public Task <mediaItemsCreateResponse?> UploadMultiple(string[] filePaths, string?albumId = null, GooglePhotosUploadMethod uploadMethod = GooglePhotosUploadMethod.ResumableMultipart) => _UploadMultiple(filePaths, albumId, uploadMethod);
public Task <mediaItemsCreateResponse?> UploadMultiple(string folderPath, string?searchPattern = null, string?albumId = null, GooglePhotosUploadMethod uploadMethod = GooglePhotosUploadMethod.ResumableMultipart) { var filePaths = Directory.GetFiles(folderPath, searchPattern); return(_UploadMultiple(filePaths, albumId, uploadMethod)); }
public async Task <NewMediaItemResult?> UploadSingle(string path, string?albumId = null, string?description = null, GooglePhotosUploadMethod uploadMethod = GooglePhotosUploadMethod.ResumableMultipart) { var uploadToken = await UploadMediaAsync(path, uploadMethod); if (!string.IsNullOrWhiteSpace(uploadToken)) { return(await AddMediaItemAsync(uploadToken !, path, description, albumId)); } return(null); }