private void Add(SubscriptionFromPostManager.TransitionToPostData transitionToPostData) { SubscriptionFromPostManager.TransitionToPostData transitionToPostData1 = this._transitionTimes.FirstOrDefault <SubscriptionFromPostManager.TransitionToPostData>((Func <SubscriptionFromPostManager.TransitionToPostData, bool>)(t => t.OwnerId == transitionToPostData.OwnerId)); if (transitionToPostData1 != null) { this._transitionTimes.Remove(transitionToPostData1); } this._transitionTimes.Add(transitionToPostData); }
private void CheckSubscriptionFromPostForId(long ownerId) { SubscriptionFromPostManager.TransitionToPostData transitionToPostData = this._transitionTimes.FirstOrDefault <SubscriptionFromPostManager.TransitionToPostData>((Func <SubscriptionFromPostManager.TransitionToPostData, bool>)(t => t.OwnerId == ownerId)); if (transitionToPostData == null || (DateTime.UtcNow - transitionToPostData.DateTime).TotalHours > 24.0) { return; } EventAggregator.Current.Publish(new SubscriptionFromPostEvent() { post_id = transitionToPostData.PostId }); this._transitionTimes.Remove(transitionToPostData); }
public void Handle(TransitionFromPostEvent message) { string[] strArray = message.post_id.Split('_'); long result; if (strArray.Length != 2 || !long.TryParse(strArray[0], out result)) { return; } SubscriptionFromPostManager.TransitionToPostData transitionToPostData = new SubscriptionFromPostManager.TransitionToPostData(); transitionToPostData.DateTime = DateTime.UtcNow; string postId = message.post_id; transitionToPostData.PostId = postId; long num = result; transitionToPostData.OwnerId = num; this.Add(transitionToPostData); }