/*******************************************************************************/ /***************************** Primary Methods *********************************/ /*******************************************************************************/ // Ego User and Followee Inforamtion public void setEgoNetwork() { // Ego User Information egoUser.setFolloweeList(dbAdapter.getFolloweeList(egoUser)); egoUser.setPublishedTweets(dbAdapter.getPublishedTweets(egoUser)); egoUser.setRetweets(dbAdapter.getRetweetList(egoUser)); egoUser.setQuotes(dbAdapter.getQuoteList(egoUser)); egoUser.setFavorites(dbAdapter.getFavoriteList(egoUser)); egoUser.updateLikedTweets(); // Followee Information followeeTable = new Hashtable(); HashSet<long> followeeList = egoUser.getFolloweeList(); foreach (long followeeID in followeeList) { User followee = new User(followeeID); followee.setFolloweeList(dbAdapter.getFolloweeList(followee)); followee.setPublishedTweets(dbAdapter.getPublishedTweets(followee)); followee.setRetweets(dbAdapter.getRetweetList(followee)); followee.setQuotes(dbAdapter.getQuoteList(followee)); followee.setFavorites(dbAdapter.getFavoriteList(followee)); followee.updateLikedTweets(); if (Program.isOnlyFriendInEgoNetwork == true) { // CASE 1: Only Friends if (egoUser.isFriend(followee)) { followeeTable.Add(followee.ID, followee); this.numOfFriend++; } } else { // CASE 2: All of followees including friends followeeTable.Add(followee.ID, followee); if (egoUser.isFriend(followee)) this.numOfFriend++; } } // Member table: egoUser U followee memberTable = new Hashtable(); memberTable.Add(egoUser.ID, egoUser); ICollection followees = followeeTable.Values; foreach(User followee in followees) { memberTable.Add(followee.ID, followee); } }