internal void RemoveAllBookmarks(BookmarkScopeManager bookmarkScopeManager, BookmarkManager bookmarkManager) { if (this.extendedData != null) { this.extendedData.PurgeBookmarks(bookmarkScopeManager, bookmarkManager, this); } }
public void PurgeBookmarks(BookmarkScopeManager bookmarkScopeManager, BookmarkManager bookmarkManager, System.Activities.ActivityInstance owningInstance) { if ((this.bookmarks != null) && (this.bookmarks.Count > 0)) { Bookmark bookmark; IList <Bookmark> list; this.bookmarks.TransferBookmarks(out bookmark, out list); this.bookmarks = null; if (bookmarkScopeManager != null) { bookmarkScopeManager.PurgeBookmarks(bookmarkManager, bookmark, list); } else { bookmarkManager.PurgeBookmarks(bookmark, list); } owningInstance.DecrementBusyCount(this.BlockingBookmarkCount); this.BlockingBookmarkCount = 0; } }
internal void MarkAsComplete(BookmarkScopeManager bookmarkScopeManager, BookmarkManager bookmarkManager) { if (this.extendedData != null) { this.extendedData.PurgeBookmarks(bookmarkScopeManager, bookmarkManager, this); if (this.extendedData.DataContext != null) { this.extendedData.DataContext.Dispose(); } } if (this.instanceMap != null) { this.instanceMap.RemoveEntry(this); if (this.HasActivityReferences) { this.extendedData.PurgeActivityReferences(this.instanceMap); } } if (this.Parent != null) { this.Parent.RemoveChild(this); } }