public static Project FindProjectFromProjectItemFileName([NotNull] this ProjectHost projectHost, [NotNull] string fileName) { Assert.ArgumentNotNull(projectHost, nameof(projectHost)); Assert.ArgumentNotNull(fileName, nameof(fileName)); return(ProjectManager.FindProjectFromProjectItemFileName(fileName)); }
public static Project ConnectProjectToSitecore([NotNull] this ProjectHost projectHost, [NotNull] EnvDTE.Project project) { Assert.ArgumentNotNull(projectHost, nameof(projectHost)); Assert.ArgumentNotNull(project, nameof(project)); var d = new SelectSiteDialog(); var hostName = GetServer(project); d.Select(hostName, string.Empty); d.ShowNewConnectionButton = true; if (AppHost.Shell.ShowDialog(d) != true) { return(null); } var site = d.Site; if (site == null) { return(null); } var newProject = ProjectManager.CreateBlankProject(project.FileName); newProject.HostName = site.HostName; newProject.UserName = site.UserName; newProject.IsRemoteSitecore = projectHost.GetIsRemoteSitecore(project.FileName); newProject.Save(); ProjectManager.LoadProject(newProject); return(newProject); }
private static Projects GetProjectsByUsername(string host, string username) { Assert.ValidInput(username, "username"); Assert.ValidInput(host, "host"); ProjectHost projectHost = ProjectHostExtensions.GetProjectHost(host); Assert.ValidInput(projectHost.ToString(), "host"); var projects = new List <Project>().GetFromCache(projectHost, username); if (projects != null) { return(new Projects(projects)); } switch (projectHost) { case ProjectHost.GoogleCode: projects = GoogleCodeProjectsByUsername(username); break; case ProjectHost.GitHub: projects = GitHubProjectsByUsername(username); break; } return(new Projects(projects.AddToCache(projectHost, username))); }
public static List <Project> GetFromCache(this List <Project> projects, ProjectHost projectHost, string username) { var key = GetKey(projectHost, username); if (GetFromCache <List <Project> >(key) != default(List <Project>)) { return(GetFromCache <List <Project> >(key)); } return(null); }
public static Project CreateBlankProject([NotNull] this ProjectHost projectHost, [NotNull] string fileName) { Assert.ArgumentNotNull(projectHost, nameof(projectHost)); Assert.ArgumentNotNull(fileName, nameof(fileName)); var newProject = ProjectManager.CreateBlankProject(fileName); ProjectManager.LoadProject(newProject); return(newProject); }
public static bool GetIsRemoteSitecore([NotNull] this ProjectHost projectHost, [NotNull] string fileName) { Assert.ArgumentNotNull(projectHost, nameof(projectHost)); Assert.ArgumentNotNull(fileName, nameof(fileName)); var path = Path.GetDirectoryName(fileName); path += @"\sitecore\shell\WebService\service.asmx"; return(!File.Exists(path)); }
private static string GetKey(ProjectHost projectHost, string username) { return(string.Format("{0}-{1}", projectHost, username)); }
public static List <Project> AddToCache(this List <Project> projects, ProjectHost projectHost, string username) { return(projects.AddToCache(GetKey(projectHost, username))); }
private string BuildProjectHostUsernamePair(ProjectHost projectHost, string username) { return string.Format("{0}:{1},", projectHost, username); }