OpenSim.Region.CoreModules.Avatar.Friends.FriendsModule.OnNewClient C# (CSharp) Method

OnNewClient() private method

private OnNewClient ( IClientAPI client ) : void
client IClientAPI
return void
        private void OnNewClient(IClientAPI client)
        {
            client.OnInstantMessage += OnInstantMessage;
            client.OnApproveFriendRequest += OnApproveFriendRequest;
            client.OnDenyFriendRequest += OnDenyFriendRequest;
            client.OnTerminateFriendship += OnTerminateFriendship;
            client.OnGrantUserRights += OnGrantUserRights;

            // Asynchronously fetch the friends list or increment the refcount for the existing 
            // friends list
            Util.FireAndForget(
                delegate(object o)
                {
                    lock (m_Friends)
                    {
                        UserFriendData friendsData;
                        if (m_Friends.TryGetValue(client.AgentId, out friendsData))
                        {
                            friendsData.Refcount++;
                        }
                        else
                        {
                            friendsData = new UserFriendData();
                            friendsData.PrincipalID = client.AgentId;
                            friendsData.Friends = FriendsService.GetFriends(client.AgentId);
                            friendsData.Refcount = 1;

                            m_Friends[client.AgentId] = friendsData;
                        }
                    }
                }
            );
        }