Exemple #1
0
        public static UserToICompareableAdapter getActiveFriendByDistance(User i_LoggedInUser, int i_ChosenDistance, List <string> sortParamsList)
        {
            List <User> filteredUsersList = FriendsByDistance.FriendsByDistanceFeatureManager.GetFriendsInDistance(i_LoggedInUser, i_ChosenDistance);
            List <UserToICompareableAdapter> activeFriendList = ActiveFriendFeatureManager.FetchActiveFriendsList(i_LoggedInUser, sortParamsList, filteredUsersList);
            UserToICompareableAdapter        mostActiveFriend = null;

            if (activeFriendList.Count > 0)
            {
                mostActiveFriend = activeFriendList[0];
            }
            else
            {
                throw new Exception("Can't get most active friend by distance");
            }

            return(mostActiveFriend);
        }
Exemple #2
0
        private void fetchMostActiveFriendsButton_Click(object i_Sender, EventArgs i_E)
        {
            if (m_LoggedInUser != null)
            {
                Thread thread = new Thread(() =>
                {
                    List <string> sortParamsList = CheckedListBoxSortingParameters.CheckedItems.OfType <string>().ToList();
                    List <User> friendList       = m_LoggedInUser.Friends.ToList();
                    List <UserToICompareableAdapter> activeFriendList =
                        ActiveFriendFeatureManager.FetchActiveFriendsList(m_LoggedInUser, sortParamsList, friendList);

                    mostActiveFriendsListBox.Invoke(new Action(() =>
                    {
                        mostActiveFriendsListBox.Items.Clear();
                        mostActiveFriendsListBox.DisplayMember = "Name";
                        activeFriendList.ForEach(new Action <UserToICompareableAdapter>(friend => mostActiveFriendsListBox.Items.Add(friend)));
                    }));
                });
                thread.Start();
            }
        }