public void SetLastWorkItem(ITeamExplorer teamExplorer, ITeamFoundationContext context) { var lastChangeset = GetLastUserChangeSet(context.TeamProjectCollection, context.TeamProjectName); if (lastChangeset == null) return; SetLastWorkItem(teamExplorer, lastChangeset); }
public TFSBuildService(ITFSConnection _tfsConnection, IServiceProvider serviceProvider, ILogger _logger) { tfsConnection = _tfsConnection; tfsConnection.ConnectionChanged += ResetConnection; logger = _logger; teamExplorer = serviceProvider.GetService(typeof(ITeamExplorer)) as ITeamExplorer; vsTfsBuild = serviceProvider.GetService(typeof(IVsTeamFoundationBuild)) as IVsTeamFoundationBuild; }
public TeamExplorerController([Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider) { if (serviceProvider == null) { throw new ArgumentNullException(nameof(serviceProvider)); } this.teamExplorer = serviceProvider.GetService<ITeamExplorer>(); if (this.TeamExplorer == null) { throw new ArgumentException(string.Format(CultureInfo.CurrentCulture, Strings.MissingService, nameof(ITeamExplorer)), nameof(serviceProvider)); } }
public GitSubmodulesPage([Import(typeof (SVsServiceProvider))] IServiceProvider serviceProvider) { Title = "Git Submodules"; gitService = (IGitExt) serviceProvider.GetService(typeof (IGitExt)); teamExplorer = (ITeamExplorer) serviceProvider.GetService(typeof (ITeamExplorer)); gitService.PropertyChanged += OnGitServicePropertyChanged; var outWindow = Package.GetGlobalService(typeof (SVsOutputWindow)) as IVsOutputWindow; var customGuid = new Guid("08A48010-2A4A-4DB1-AA58-36674F667904"); outWindow.CreatePane(ref customGuid, "Git Submodules", 1, 1); outWindow.GetPane(ref customGuid, out outputWindow); ui = new GitSubmodulePageUI(); PageContent = ui; }
public GitOperationsPage([Import(typeof (SVsServiceProvider))] IServiceProvider serviceProvider) { Title = "Git Operations"; gitService = (IGitExt) serviceProvider.GetService(typeof (IGitExt)); teamExplorer = (ITeamExplorer) serviceProvider.GetService(typeof (ITeamExplorer)); gitService.PropertyChanged += OnGitServicePropertyChanged; var outWindow = Package.GetGlobalService(typeof (SVsOutputWindow)) as IVsOutputWindow; var customGuid = new Guid("A7C0163F-82E8-4D95-97C8-C62743D15DC3"); outWindow.CreatePane(ref customGuid, "Git Operations", 1, 1); outWindow.GetPane(ref customGuid, out outputWindow); ui = new GitOperationsPageUI(); PageContent = ui; }
public GitFlowPage([Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider) { Title = "GitFlow"; gitService = (IGitExt)serviceProvider.GetService(typeof(IGitExt)); teamExplorer = (ITeamExplorer) serviceProvider.GetService(typeof (ITeamExplorer)); gitService.PropertyChanged += OnGitServicePropertyChanged; var outWindow = Package.GetGlobalService(typeof(SVsOutputWindow)) as IVsOutputWindow; var customGuid = new Guid("B85225F6-B15E-4A8A-AF6E-2BE96A4FE672"); outWindow.CreatePane(ref customGuid, "GitFlow.VS", 1, 1); outWindow.GetPane(ref customGuid, out outputWindow); ui = new GitFlowPageUI(); PageContent = ui; }
private static void SetLastWorkItem(ITeamExplorer teamExplorer, Changeset changeset) { var workItemId = GetAssociatedWorkItemId(changeset); if (workItemId == 0) return; var pendingChangesPage = (TeamExplorerPageBase)teamExplorer.NavigateToPage(new Guid(TeamExplorerPageIds.PendingChanges), null); var model = (IPendingCheckin)pendingChangesPage.Model; var modelType = model.GetType(); var method = modelType.GetMethod("AddWorkItemsByIdAsync", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.FlattenHierarchy); var workItemsIdsArray = new[] { workItemId }; method.Invoke(model, new object[] { workItemsIdsArray, 1 /* Add */ }); }
public GitSubmodulesNavigationItem([Import(typeof (SVsServiceProvider))] IServiceProvider serviceProvider) : base(serviceProvider) { try { UpdateVisible(); Text = "Git Submodules"; Image = Resources.LinkIcon; IsVisible = true; teamExplorer = GetService<ITeamExplorer>(); gitService = (IGitExt) serviceProvider.GetService(typeof (IGitExt)); teamExplorer.PropertyChanged += TeamExplorerOnPropertyChanged; } catch (Exception ex) { HandleException(ex); } }
public PendingChangesInclusion(ITeamExplorer teamExplorer) { var pendingChangesPage = (TeamExplorerPageBase)teamExplorer.NavigateToPage(new Guid(TeamExplorerPageIds.PendingChanges), null); var model = pendingChangesPage.Model; var p = model.GetType().GetProperty("DataProvider", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.FlattenHierarchy); var dataProvider = p.GetValue(model); // IPendingChangesDataProvider is internal; var dataProviderType = dataProvider.GetType(); p = dataProviderType.GetProperty("IncludedChanges", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.FlattenHierarchy); var m = p.GetMethod; this.getIncludedChanges = (Func<IList<PendingChange>>)m.CreateDelegate(typeof(Func<IList<PendingChange>>), dataProvider); p = dataProviderType.GetProperty("ExcludedChanges", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.FlattenHierarchy); m = p.GetMethod; this.getExcludedChanges = (Func<IList<PendingChange>>)m.CreateDelegate(typeof(Func<IList<PendingChange>>), dataProvider); m = dataProviderType.GetMethod("IncludeChanges", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.FlattenHierarchy); this.includeChanges = (Action<IList<PendingChange>>)m.CreateDelegate(typeof(Action<IList<PendingChange>>), dataProvider); m = dataProviderType.GetMethod("ExcludeChanges", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.FlattenHierarchy); this.excludeChanges = (Action<IList<PendingChange>>)m.CreateDelegate(typeof(Action<IList<PendingChange>>), dataProvider); }
public TeamExplorerProvider([Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider) { this.teamExplorer = serviceProvider.GetService <ITeamExplorer>(); }
static void NavigateToHomePage(ITeamExplorer teamExplorer) { teamExplorer.NavigateToPage(new Guid(TeamExplorerPageIds.Home), null); }
public TeamExplorerServiceVS2019(IServiceProvider serviceProvider, ITFVCService tfvcService) { _teamExplorer = (ITeamExplorer)serviceProvider.GetService(typeof(ITeamExplorer)); _tfvcService = tfvcService; }
public CreateStashSetionViewModel(IServiceProvider serviceProvider) { _serviceProvider = serviceProvider; _teamExplorer = _serviceProvider.GetService(typeof(ITeamExplorer)) as ITeamExplorer; _gitCommandExecuter = new GitCommandExecuter(serviceProvider); }
public void SetWorkItemsWithStateInProgress(ITeamExplorer teamExplorer, ITeamFoundationContext context) { var workItemWithStateInProgress = GetWorkItemWithStateInProgress(context.TeamProjectCollection, context.TeamProjectName); SetWorkItems(teamExplorer, workItemWithStateInProgress); }
private BranchInfo[] GetBranches(ITeamExplorer teamExplorer, ITeamFoundationContext context) { var versionControlServer = context.TeamProjectCollection.GetService <VersionControlServer>(); BranchInfo[] branchInfos = versionControlServer.QueryRootBranchObjects(RecursionType.Full) .Where(b => !b.Properties.RootItem.IsDeleted) .Select(s => new { Project = s.Properties.RootItem.Item .Substring(0, s.Properties.RootItem.Item.IndexOf('/', 2)), s.Properties, s.DateCreated, s.ChildBranches }) .Select(s => new { s.Project, Branch = s.Properties.RootItem.Item.Replace(s.Project, ""), Parent = s.Properties.ParentBranch != null ? s.Properties.ParentBranch.Item.Replace(s.Project, "") : "", Version = (s.Properties.RootItem.Version as ChangesetVersionSpec) .ChangesetId, s.DateCreated, s.Properties.Owner, ChildBranches = s.ChildBranches .Where(cb => !cb.IsDeleted) .Select(cb => new { Branch = cb.Item.Replace(s.Project, ""), Version = (cb.Version as ChangesetVersionSpec).ChangesetId }) }) .Where(s => s.Project.Equals("$/" + context.TeamProjectName)) .OrderBy(s => s.Project).ThenByDescending(s => s.Version).Select(x => new BranchInfo { BranchServerPath = string.Concat(x.Project, x.Branch), OriginalParentServerPath = string.IsNullOrEmpty(x.Parent)? string.Empty: string.Concat(x.Project, x.Parent) }).ToArray(); foreach (var branchInfo in branchInfos) { branchInfo.ParentServerPath = branchInfo.OriginalParentServerPath; // Мёржить можно только в родителя. //if (branchInfo.BranchName.EndsWith("Stable")) //{ // var version = branchInfo.BranchName.Split('.').First(); // var parentBranch = branchInfos.Where(x => x.BranchName.EndsWith("Servicing")) // .SingleOrDefault(x => x.BranchName.StartsWith(version)); // branchInfo.ParentServerPath = parentBranch.BranchServerPath; //} //else if (branchInfo.BranchName.EndsWith("Servicing")) //{ // branchInfo.ParentServerPath = branchInfo.OriginalParentServerPath; //} //else //{ // branchInfo.ParentServerPath = branchInfo.OriginalParentServerPath; //} } return(branchInfos); }
public VsGitSourceControlService(ITeamExplorer teamExplorer) { _teamExplorer = teamExplorer; }
/// <summary> /// Opens up the shelveset details page for the given shelveset /// </summary> /// <param name="shelveset">The shelveset to be displayed.</param> public void ViewShelvesetDetails(Shelveset shelveset) { ITeamExplorer teamExplorer = this.GetService <ITeamExplorer>(); teamExplorer?.NavigateToPage(new Guid(TeamExplorerPageIds.ShelvesetDetails), shelveset); }
public MergeService(IServiceProvider serviceProvider, ITFVCService tFVCService) { _serviceProvider = serviceProvider; _tfvcService = tFVCService; _teamExplorer = (ITeamExplorer)_serviceProvider.GetService(typeof(ITeamExplorer)); }
public StashListTeamExplorerNavigationItem([Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider) { _serviceProvider = serviceProvider; _teamExplorer = _serviceProvider.GetService(typeof(ITeamExplorer)) as ITeamExplorer; _image = Resources.TeamExplorerIcon; }
public StashInfoChangesSectionViewModel(Stash stash, FileIconsService fileIconsService, GitCommandExecuter gitCommandExecuter, ITeamExplorer teamExplorer, IVsDifferenceService vsDiffService) { _fileIconsService = fileIconsService; _gitCommandExecuter = gitCommandExecuter; _teamExplorer = teamExplorer; _vsDiffService = vsDiffService; _stash = stash; if (stash == null) { return; } var separator = '/'; var rootNode = new TreeNode(); var paths = stash.ChangedFiles .Select(f => f.Path) .Where(x => !string.IsNullOrEmpty(x.Trim())) .ToList(); foreach (var path in paths) { var currentNode = rootNode; var pathNodes = path.Split(separator); foreach (var item in pathNodes) { var foundedNode = currentNode.Nodes.Cast <TreeNode>().FirstOrDefault(x => x.Text == item); currentNode = foundedNode ?? currentNode.Nodes.Add(item); } } var rootTreeViewItem = ToTreeViewItem(rootNode, false); ChangeItems = new ObservableCollection <TreeViewItemWithIcon>(rootTreeViewItem.Items.ToList()); }
public ToggleStashStagedSectionVisibilityCommand(ITeamExplorer teamExplorer) { _teamExplorer = teamExplorer; }
public SonarLinkConnectionSection([Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider, IClientManager clientManager) { _teamExplorer = serviceProvider.GetService(typeof(ITeamExplorer)) as ITeamExplorer; _clientManager = clientManager; }