private void Solve(ISolver s, AbstractFolderEvent e)
 {
     using (var activity = new ActivityListenerResource(this.activityListener)) {
         if (e is FolderEvent)
         {
             s.Solve((e as FolderEvent).LocalFolder, (e as FolderEvent).RemoteFolder, ContentChangeType.NONE, ContentChangeType.NONE);
         }
         else if (e is FileEvent)
         {
             s.Solve((e as FileEvent).LocalFile, (e as FileEvent).RemoteFile, (e as FileEvent).LocalContent, (e as FileEvent).RemoteContent);
         }
     }
 }
Beispiel #2
0
        /// <summary>
        /// Handles StartNextSync events.
        /// </summary>
        /// <param name="e">The event to handle.</param>
        /// <returns>true if handled</returns>
        public override bool Handle(ISyncEvent e)
        {
            if (e is StartNextSyncEvent)
            {
                Logger.Debug("Starting DecendantsCrawlSync upon " + e);
                using (var activity = new ActivityListenerResource(this.activityListener)) {
                    this.CrawlDescendants();
                }

                this.Queue.AddEvent(new FullSyncCompletedEvent(e as StartNextSyncEvent));
                return(true);
            }

            return(false);
        }
        /// <summary>
        /// Handles StartNextSync events.
        /// </summary>
        /// <param name="e">The event to handle.</param>
        /// <returns>true if handled</returns>
        public override bool Handle(ISyncEvent e) {
            if (e is StartNextSyncEvent) {
                try {
                    Logger.Debug("Starting DecendantsCrawlSync upon " + e);
                    using (var activity = new ActivityListenerResource(this.activityListener)) {
                        this.CrawlDescendants();
                    }

                    this.Queue.AddEvent(new FullSyncCompletedEvent(e as StartNextSyncEvent));
                    return true;
                } catch (InteractionNeededException interaction) {
                    this.Queue.AddEvent(new InteractionNeededEvent(interaction));
                    throw;
                }
            }

            return false;
        }
 private void Solve(ISolver s, AbstractFolderEvent e) {
     using (var activity = new ActivityListenerResource(this.activityListener)) {
         if (e is FolderEvent) {
             s.Solve((e as FolderEvent).LocalFolder, (e as FolderEvent).RemoteFolder, ContentChangeType.NONE, ContentChangeType.NONE);
         } else if (e is FileEvent) {
             s.Solve((e as FileEvent).LocalFile, (e as FileEvent).RemoteFile, (e as FileEvent).LocalContent, (e as FileEvent).RemoteContent);
         }
     }
 }