void Init() { try { string workstation_class_asm_ref = "Microsoft.TeamFoundation.VersionControl.Client.Workstation, Microsoft.TeamFoundation.VersionControl.Client, Version={0}.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"; string workspaceinfo_class_asm_ref = "Microsoft.TeamFoundation.VersionControl.Client.WorkspaceInfo, Microsoft.TeamFoundation.VersionControl.Client, Version={0}.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"; int dte_major_version = PackageGlobals.Instance().DTEMajorVersion; System.Type workstation_class = System.Type.GetType(string.Format(workstation_class_asm_ref, PackageGlobals.Instance().DTEMajorVersion)); if (workstation_class != null) { m_PICurrent = workstation_class.GetProperty("Current", BindingFlags.Static | BindingFlags.Public); if (m_PICurrent != null) { m_MIGetLocalWorkspaceInfo = workstation_class.GetMethod("GetLocalWorkspaceInfo", new System.Type[] { typeof(string) }); if (m_MIGetLocalWorkspaceInfo != null) { System.Type workspaceinfo_class = System.Type.GetType(string.Format(workspaceinfo_class_asm_ref, PackageGlobals.Instance().DTEMajorVersion)); if (workspaceinfo_class != null) { m_PIName = workspaceinfo_class.GetProperty("Name"); m_PIOwnerName = workspaceinfo_class.GetProperty("OwnerName"); } } } } } catch (System.Exception ex) { Debug.WriteLine(ex.ToString()); } }
public override Value Evaluate(IEvalContext ctx) { string path = SubExpressions[0].Evaluate(ctx).ToString(); string owner = ""; if (path.Length > 0) { PackageGlobals.InvokeOnUIThread(delegate() { owner = WorkspaceInfoGetter.Instance().GetOwner(path); }); } return(new StringValue(owner)); }