public void DownloadBlobs() { if (SelectedBucket is null) { return; } using (var dialog = new System.Windows.Forms.FolderBrowserDialog()) { System.Windows.Forms.DialogResult result = dialog.ShowDialog(); if (result != System.Windows.Forms.DialogResult.OK) { return; } var entries = SelectedBlobs.Select(b => b.NativeBlob).ToList(); AddTask(new DownloadBlobsTaskViewModel(dialog.SelectedPath, entries)); } }
private async void CopyLink() { if (SelectedBlobs?.Count < 0) { return; } SelectedBucket.IsBusy = true; try { var blobs = new List <IBlob>(); blobs.AddRange(SelectedBlobs.Select(b => b.NativeBlob).OfType <IBlob>()); foreach (var dirVm in SelectedBlobs.Where(b => b.IsDirectory)) { var children = await dirVm.NativeBlob.ListAllBlobsAsync(); blobs.AddRange(children); } var builder = new StringBuilder(); foreach (var blob in blobs) { var link = blob.GetLink(TimeSpan.FromHours(24)); builder.AppendLine(link.AbsoluteUri); } Clipboard.SetText(builder.ToString()); } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { SelectedBucket.IsBusy = false; } }