public void StartWallWatch(long ownerId, DateTime?lastDateToLoad = null, long lastPostToLoad = -1) { WallWatcher w = null; if (!WallWatchers.ContainsKey(ownerId)) { w = new WallWatcher(API, ownerId); w.NewPosts += Wall_NewPosts; w.FixedPostChanged += Wall_FixedPostChanged; WallWatchers.Add(ownerId, w); } else { w = (WallWatcher)WallWatchers[ownerId]; } // TODO: Внести эти махинации внутрь WallWatcher чтобы их можно было приостановить в случае Stop и продолжить при Start if (lastDateToLoad != null || lastPostToLoad >= 0) { w.LoadWallPosts(lastDateToLoad, lastPostToLoad); } w.Start(true); }
public void StartWallWatch(CancellationToken cancellationToken, long ownerId, DateTime? lastDateToLoad = null, long lastPostToLoad = -1) { WallWatcher w = null; if (!WallWatchers.ContainsKey(ownerId)) { w = new WallWatcher(API, ownerId); w.NewPosts += Wall_NewPosts; w.FixedPostChanged += Wall_FixedPostChanged; WallWatchers.Add(ownerId, w); } else w = (WallWatcher)WallWatchers[ownerId]; WallLoadParametrs loadParams = new WallLoadParametrs(); loadParams.LastDateToLoad = lastDateToLoad; loadParams.LastPostToLoad = lastPostToLoad; // TODO: Внести эти махинации внутрь WallWatcher чтобы их можно было приостановить в случае Stop и продолжить при Start if (lastDateToLoad != null || lastPostToLoad >= 0) w.LoadWallPosts(cancellationToken, loadParams); w.Start(true); }