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;
 }
Exemple #3
0
        //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;
        }
Exemple #4
0
 public void unsubscribe(User user)
 {
     user.UnsubscribeFromEntity(this);
 }
Exemple #5
0
 //object instance = Activator.CreateInstance(type, (Array)receivedObj["ctorArguments"]);
 public void subscribe(User user)
 {
     user.SubscribeToEntity(this);
 }
Exemple #6
0
        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;
 }