public override ExitCode Execute() { var nodeBuilder = new CacheNodeBuilder(ImplementationStore, FeedCache); nodeBuilder.Run(); if (AdditionalArgs.Count == 1) { var uri = GetCanonicalUri(AdditionalArgs[0]); if (uri.IsFile && !File.Exists(uri.LocalPath)) { throw new FileNotFoundException(string.Format(Resources.FileOrDirNotFound, uri.LocalPath), uri.LocalPath); } var nodes = nodeBuilder.Nodes !.OfType <OwnedImplementationNode>().Where(x => x.FeedUri == uri); Handler.Output(Resources.CachedImplementations, nodes); } else { var nodes = nodeBuilder.Nodes !.OfType <ImplementationNode>(); Handler.Output(Resources.CachedImplementations, nodes); } return(ExitCode.OK); }
//--------------------// #region Build tree list /// <summary> /// Fills the <see cref="_treeView"/> with entries. /// </summary> internal async Task RefreshListAsync() { buttonRefresh.Enabled = false; labelLoading.Visible = true; _store.Flush(); try { var nodeBuilder = await Task.Run(() => { var builder = new CacheNodeBuilder(_store, _feedCache); builder.Run(); return(builder); }); var nodes = nodeBuilder.Nodes !.Select(x => new StoreManageNode(x, this)); _treeView.Nodes = new NamedCollection <StoreManageNode>(nodes); textTotalSize.Text = nodeBuilder.TotalSize.FormatBytes(CultureInfo.CurrentCulture); OnCheckedEntriesChanged(null, EventArgs.Empty); } catch (Exception ex) { Msg.Inform(this, ex.Message, MsgSeverity.Error); } labelLoading.Visible = false; buttonRefresh.Enabled = true; }
private void refreshListWorker_DoWork(object sender, DoWorkEventArgs e) { _store.Flush(); var nodeBuilder = new CacheNodeBuilder(_store, _feedCache); nodeBuilder.Run(); e.Result = nodeBuilder; }
private void ListImplementations() { if (AdditionalArgs.Count > 2) { throw new OptionException(Resources.TooManyArguments, ""); } var nodeBuilder = new CacheNodeBuilder(Store, FeedCache); nodeBuilder.Run(); if (AdditionalArgs.Count == 2) { var uri = GetCanonicalUri(AdditionalArgs[1]); var nodes = nodeBuilder.Nodes.OfType <OwnedImplementationNode>().Where(x => x.FeedUri == uri); Handler.Output(Resources.CachedImplementations, nodes); } else { var nodes = nodeBuilder.Nodes.OfType <ImplementationNode>(); Handler.Output(Resources.CachedImplementations, nodes); } }