public virtual bool Unsubscribe(User theUser) { if (inDeletionPhase == false) { return subscribedUsers.TryRemove(theUser.Id, out theUser); //returns false if the item is not found } return false; }
public bool Subscribe(User theUser) { if (inDeletionPhase == false) { return subscribedUsers.TryAdd(theUser.Id, theUser); } return false; }
//public Vote(string userID, string subjectID, bool stance) ////public Vote() //{ // VotableItem subject = (VotableItem)ServerClientEntity.GetEntityFromSetsByID(subjectID); // User user = Dem2Hub.allUsers.First(x => x.Id == casterUserID); // // Agrees = stance; // castedTime = DateTime.Now; // InitVote(user, subject); // Dem2Hub.StoreThis(this); //} public bool InitVote(User caster) { castedTime = DateTime.Now; OwnerId = caster.Id; casterUserId = OwnerId; VotableItem subject = (VotableItem)EntityRepository.GetEntityFromSetsByID(subjectId); if (subject != null) { if (EntityRepository.Add(this)) { subject.IncrementVotableVersion(); // this triggers on change and notifies the subscribers, because on the subject, properties VoteCounts changed return true; } else { } } return false; }
public void unsubscribe(User user) { user.UnsubscribeFromEntity(this); }
//object instance = Activator.CreateInstance(type, (Array)receivedObj["ctorArguments"]); public void subscribe(User user) { user.SubscribeToEntity(this); }
public bool Equals(User second) { // If parameter is null return false: if ((object)second == null) { return false; } // Return true if the fields match: return FBAccount.Equals(second.FBAccount) || Id == second.Id; }
public ServerClientEntity(User creator) { subscribedUsers = new ConcurrentDictionary<string, User>(); OnChange += ServerClientEntity_OnChange; _OwnerId = creator.Id; }