#region Event Handlers
public void Handle(SelectiveSynchChanges message)
- {
- PithosMonitor monitor;
- if (Monitors.TryGetValue(message.Account.AccountKey, out monitor))
- {
- monitor.SetSelectivePaths(message.Uris, message.Added, message.Removed);
-
- }
-
- var account = Accounts.FirstOrDefault(acc => acc.AccountKey == message.Account.AccountKey);
- if (account!=null)
- {
- this._pollAgent.SetSelectivePaths(account, message.Added, message.Removed);
- }
-
+ {
+ TaskEx.Run(() =>
+ {
+ PithosMonitor monitor;
+ if (Monitors.TryGetValue(message.Account.AccountKey, out monitor))
+ {
+ monitor.SetSelectivePaths(message.Uris, message.Added, message.Removed);
+ }
+
+ var account = Accounts.FirstOrDefault(acc => acc.AccountKey == message.Account.AccountKey);
+ if (account != null)
+ {
+ this._pollAgent.SetSelectivePaths(account, message.Added, message.Removed);
+ }
+ });
- }
+ }
private bool _pollStarted;