config: get urls in a simpler way and clean up
This commit is contained in:
parent
245b7d57b0
commit
cb4a1e1a5b
|
@ -131,6 +131,7 @@ namespace SparkleLib {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
public void AddFolder (string name, string url, string backend)
|
||||
{
|
||||
XmlNode node_name = CreateElement ("name");
|
||||
|
@ -168,6 +169,7 @@ namespace SparkleLib {
|
|||
return true;
|
||||
}
|
||||
|
||||
|
||||
public void RemoveFolder (string name)
|
||||
{
|
||||
foreach (XmlNode node_folder in SelectNodes ("/sparkleshare/folder")) {
|
||||
|
@ -178,20 +180,6 @@ namespace SparkleLib {
|
|||
Save ();
|
||||
}
|
||||
|
||||
private XmlNode GetFolder (string name)
|
||||
{
|
||||
return SelectSingleNode(String.Format("/sparkleshare/folder[name='{0}']", name));
|
||||
}
|
||||
|
||||
private string GetFolderValue (string name, string key)
|
||||
{
|
||||
XmlNode folder = this.GetFolder(name);
|
||||
|
||||
if ((folder != null) && (folder[key] != null)) {
|
||||
return folder[key].InnerText;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public bool FolderExists (string name)
|
||||
{
|
||||
|
@ -199,32 +187,39 @@ namespace SparkleLib {
|
|||
return folder != null;
|
||||
}
|
||||
|
||||
|
||||
public string GetBackendForFolder (string name)
|
||||
{
|
||||
return this.GetFolderValue(name, "backend");
|
||||
}
|
||||
|
||||
|
||||
public string GetUrlForFolder (string name)
|
||||
{
|
||||
return this.GetFolderValue(name, "url");
|
||||
}
|
||||
|
||||
public List<string> GetUrls ()
|
||||
{
|
||||
List<string> Urls = new List<string> ();
|
||||
|
||||
foreach (string folder_name in SparkleLib.SparkleConfig.DefaultConfig.Folders) {
|
||||
Urls.Add( GetUrlForFolder(folder_name).Replace("ssh://", "").Replace("git://", "").Split('/')[0] );
|
||||
public List<string> Domains {
|
||||
get {
|
||||
List<string> domains = new List<string> ();
|
||||
|
||||
foreach (XmlNode node_folder in SelectNodes ("/sparkleshare/folder")) {
|
||||
Uri uri = new Uri (node_folder ["url"].InnerText);
|
||||
domains.Add (uri.Host);
|
||||
}
|
||||
|
||||
return Urls;
|
||||
return domains;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public string GetAnnouncementsForFolder (string name)
|
||||
{
|
||||
return this.GetFolderValue(name, "announcements");
|
||||
}
|
||||
|
||||
|
||||
public string GetAnnouncementUrlForFolder (string name)
|
||||
{
|
||||
// examples?
|
||||
|
@ -273,6 +268,23 @@ namespace SparkleLib {
|
|||
Save (Path);
|
||||
SparkleHelpers.DebugInfo ("Config", "Updated \"" + Path + "\"");
|
||||
}
|
||||
|
||||
|
||||
private XmlNode GetFolder (string name)
|
||||
{
|
||||
return SelectSingleNode(String.Format("/sparkleshare/folder[name='{0}']", name));
|
||||
}
|
||||
|
||||
|
||||
private string GetFolderValue (string name, string key)
|
||||
{
|
||||
XmlNode folder = this.GetFolder(name);
|
||||
|
||||
if ((folder != null) && (folder[key] != null)) {
|
||||
return folder[key].InnerText;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -684,7 +684,7 @@ namespace SparkleShare {
|
|||
TreeModel ServerEntryCompletion ()
|
||||
{
|
||||
ListStore store = new ListStore (typeof (string));
|
||||
List<string> Urls = SparkleLib.SparkleConfig.DefaultConfig.GetUrls();
|
||||
List<string> Urls = SparkleLib.SparkleConfig.DefaultConfig.Domains;
|
||||
|
||||
store.AppendValues ("user@localhost");
|
||||
store.AppendValues ("user@example.com");
|
||||
|
|
Loading…
Reference in a new issue