protected override void OnUninitialize(HandleInitializationContext context) { FolderWatcherExtension extension = context.GetExtension <FolderWatcherExtension>(); this.ReleaseSubscription(extension); base.OnUninitialize(context); }
internal void ReleaseSubscription(FolderWatcherExtension extension) { if (this.IsInitialized) { extension.Unsubscribe(this.Id); this.Id = null; } }
internal void Initialize(FolderWatcherExtension extension, Bookmark bookmark, string folder, string pattern, bool subfolders, string subscriberDisplayName) { if (this.IsInitialized) { throw new InvalidOperationException(String.Format( Properties.Resources.SubscriptionHandleAlreadyInitialized, subscriberDisplayName)); } this.Id = extension.Subscribe(bookmark, folder, pattern, subfolders); }