StarryEyes.Models.Timelines.Statuses.StatusModel.RemoveRetweetedUser C# (CSharp) Method

RemoveRetweetedUser() public method

public RemoveRetweetedUser ( long userId ) : void
userId long
return void
        public async void RemoveRetweetedUser(long userId)
        {
            if (Status.RetweetedOriginal != null)
            {
                var status = await Get(Status.RetweetedOriginal).ConfigureAwait(false);
                status.RemoveRetweetedUser(userId);
            }
            else
            {
                TwitterUser remove;
                lock (_retweetedsLock)
                {
                    if (_retweetedUsersDic.TryGetValue(userId, out remove))
                    {
                        _retweetedUsersDic.Remove(userId);
                        Status.RetweetedUsers = Status.RetweetedUsers.Guard().Except(new[] { userId }).ToArray();
                    }
                }
                if (remove != null)
                {
                    _retweetedUsers.Remove(remove);
                    // update persistent info
#pragma warning disable 4014
                    StatusProxy.RemoveRetweeter(Status.Id, userId);
                    StatusBroadcaster.Republish(this);
#pragma warning restore 4014
                }
            }
        }