add some comments
This commit is contained in:
parent
943dfcc767
commit
6e4ace9643
|
@ -52,24 +52,30 @@ namespace SparkleLib {
|
||||||
announce_uri = "irc://204.62.14.135/";
|
announce_uri = "irc://204.62.14.135/";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We use only one listener per server to keep
|
||||||
|
// the number of connections as low as possible
|
||||||
foreach (SparkleListenerBase listener in listeners) {
|
foreach (SparkleListenerBase listener in listeners) {
|
||||||
if (listener.Server.Equals (announce_uri)) {
|
if (listener.Server.Equals (announce_uri)) {
|
||||||
SparkleHelpers.DebugInfo ("ListenerFactory", "Refered to existing listener for " + announce_uri);
|
SparkleHelpers.DebugInfo ("ListenerFactory",
|
||||||
|
"Refered to existing listener for " + announce_uri);
|
||||||
|
|
||||||
listener.AlsoListenTo (folder_identifier);
|
listener.AlsoListenTo (folder_identifier);
|
||||||
return (SparkleListenerBase) listener;
|
return (SparkleListenerBase) listener;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Uri listen_on = new Uri (announce_uri);
|
// Create a new listener with the appropriate
|
||||||
|
// type if one doesn't exist yet for that server
|
||||||
switch (listen_on.Scheme) {
|
switch (announce_uri.Scheme) {
|
||||||
case "tcp":
|
case "tcp":
|
||||||
listeners.Add (new SparkleListenerTcp (listen_on, folder_identifier));
|
listeners.Add (new SparkleListenerTcp (announce_uri, folder_identifier));
|
||||||
break;
|
break;
|
||||||
case "irc":
|
case "irc":
|
||||||
default:
|
listeners.Add (new SparkleListenerIrc (announce_uri, folder_identifier));
|
||||||
listeners.Add (new SparkleListenerIrc (listen_on, folder_identifier));
|
break;
|
||||||
break;
|
default:
|
||||||
|
listeners.Add (new SparkleListenerIrc (announce_uri, folder_identifier));
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
SparkleHelpers.DebugInfo ("ListenerFactory", "Issued new listener for " + announce_uri);
|
SparkleHelpers.DebugInfo ("ListenerFactory", "Issued new listener for " + announce_uri);
|
||||||
|
@ -109,20 +115,25 @@ namespace SparkleLib {
|
||||||
protected Uri server;
|
protected Uri server;
|
||||||
protected Timer reconnect_timer = new Timer { Interval = 60 * 1000, Enabled = true };
|
protected Timer reconnect_timer = new Timer { Interval = 60 * 1000, Enabled = true };
|
||||||
|
|
||||||
public SparkleListenerBase (Uri server, string folder_identifier) {
|
public SparkleListenerBase (Uri server, string folder_identifier)
|
||||||
|
{
|
||||||
|
this.server = server;
|
||||||
|
|
||||||
this.reconnect_timer.Elapsed += delegate {
|
this.reconnect_timer.Elapsed += delegate {
|
||||||
if (!IsConnected && !this.is_connecting)
|
if (!IsConnected && !this.is_connecting)
|
||||||
Reconnect ();
|
Reconnect ();
|
||||||
};
|
};
|
||||||
|
|
||||||
this.server = server;
|
|
||||||
this.reconnect_timer.Start ();
|
this.reconnect_timer.Start ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void AnnounceBase (SparkleAnnouncement announcement) {
|
public void AnnounceBase (SparkleAnnouncement announcement)
|
||||||
|
{
|
||||||
if (IsConnected) {
|
if (IsConnected) {
|
||||||
SparkleHelpers.DebugInfo ("Listener", "Announcing to " + announcement.FolderIdentifier + " on " + this.server);
|
SparkleHelpers.DebugInfo ("Listener",
|
||||||
|
"Announcing to " + announcement.FolderIdentifier + " on " + this.server);
|
||||||
|
|
||||||
Announce (announcement);
|
Announce (announcement);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
@ -161,6 +172,7 @@ namespace SparkleLib {
|
||||||
|
|
||||||
if (this.queue_up.Count > 0) {
|
if (this.queue_up.Count > 0) {
|
||||||
SparkleHelpers.DebugInfo ("Listener", "Delivering queued messages...");
|
SparkleHelpers.DebugInfo ("Listener", "Delivering queued messages...");
|
||||||
|
|
||||||
foreach (SparkleAnnouncement announcement in this.queue_up) {
|
foreach (SparkleAnnouncement announcement in this.queue_up) {
|
||||||
AnnounceBase (announcement);
|
AnnounceBase (announcement);
|
||||||
this.queue_up.Remove (announcement);
|
this.queue_up.Remove (announcement);
|
||||||
|
|
|
@ -71,6 +71,8 @@ namespace SparkleShare {
|
||||||
SparkleShare.Controller.OnSyncing += delegate {
|
SparkleShare.Controller.OnSyncing += delegate {
|
||||||
CurrentState = IconState.Syncing;
|
CurrentState = IconState.Syncing;
|
||||||
|
|
||||||
|
// TODO up down both
|
||||||
|
|
||||||
if (UpdateMenuEvent != null)
|
if (UpdateMenuEvent != null)
|
||||||
UpdateMenuEvent (IconState.Syncing);
|
UpdateMenuEvent (IconState.Syncing);
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue