public boolean getMentions(Twitter twitter) { boolean newActivity = false; try { if (lastRefresh != 0l) { Paging paging = new Paging(1, 50, lastRefresh); List<Status> mentions = twitter.getMentionsTimeline(paging); if (mentions.size() > 0) { insertMentions(mentions); commitLastRefresh(mentions.get(0).getId()); newActivity = true; } } else { Paging paging = new Paging(1, 1); List<Status> lastMention = twitter.getMentionsTimeline(paging); if (lastMention.size() > 0) { commitLastRefresh(lastMention.get(0).getId()); } } } catch (TwitterException e) { e.printStackTrace(); } return newActivity; }
public Map<String, RateLimitStatus> getRateLimit() { try { return twitter.getRateLimitStatus(); } catch (TwitterException e) { e.printStackTrace(); return null; } }
public User getUser(String name) { try { return new TwitterUser(twitter.showUser(name)); } catch (TwitterException e) { e.printStackTrace(); return null; } }
public boolean getFollowers(Twitter twitter) { boolean newActivity = false; try { List<User> followers = twitter.getFollowersList( useSecondAccount ? AppSettings.getInstance(context).secondScreenName : AppSettings.getInstance(context).myScreenName, -1, 200); User me = twitter.verifyCredentials(); int oldFollowerCount = sharedPrefs.getInt("activity_follower_count_" + currentAccount, 0); Set<String> latestFollowers = sharedPrefs.getStringSet( "activity_latest_followers_" + currentAccount, new HashSet<String>()); Log.v(TAG, "followers set size: " + latestFollowers.size()); Log.v(TAG, "old follower count: " + oldFollowerCount); Log.v(TAG, "current follower count: " + me.getFollowersCount()); List<User> newFollowers = new ArrayList<User>(); if (latestFollowers.size() != 0) { for (int i = 0; i < followers.size(); i++) { if (!latestFollowers.contains(followers.get(i).getScreenName())) { Log.v(TAG, "inserting @" + followers.get(i).getScreenName() + " as new follower"); newFollowers.add(followers.get(i)); newActivity = true; } else { break; } } } insertFollowers(newFollowers); latestFollowers.clear(); for (int i = 0; i < 50; i++) { if (i < followers.size()) { latestFollowers.add(followers.get(i).getScreenName()); } else { break; } } SharedPreferences.Editor e = sharedPrefs.edit(); e.putStringSet("activity_latest_followers_" + currentAccount, latestFollowers); e.putInt("activity_follower_count_" + currentAccount, me.getFollowersCount()); e.commit(); } catch (TwitterException e) { e.printStackTrace(); } return newActivity; }
public List<User> getFollowing(int num) { try { List<User> b = new ArrayList<User>(); for (twitter4j.User u : twitter.getFriendsList(twitter.verifyCredentials().getId(), -1)) { b.add(new TwitterUser(u)); } return b; } catch (TwitterException e) { e.printStackTrace(); return null; } }
public PostSet getPosts(int num) { try { ResponseList<Status> l = twitter.getUserTimeline(user.getId()); PostSet ps = new PostSet(); for (Status s : l) { ps.add(getSocial(s)); } return ps; } catch (TwitterException e) { e.printStackTrace(); return null; } }
public List<User> getFollowers() { try { List<User> ls = new ArrayList<User>(); for (twitter4j.User u : twitter.getFollowersList(user.getId(), -1)) { ls.add(new TwitterUser(u)); } return ls; } catch (TwitterException e) { e.printStackTrace(); return null; } }
private UserProfile createUserProfile(User user, boolean withExtraFields) { String fullName = user.getName(); String firstName = ""; String lastName = ""; if (!TextUtils.isEmpty(fullName)) { String[] splitName = fullName.split(" "); if (splitName.length > 0) { firstName = splitName[0]; if (splitName.length > 1) { lastName = splitName[1]; } } } Map<String, Object> extraDict = Collections.<String, Object>emptyMap(); if (withExtraFields) { extraDict = new HashMap<String, Object>(); // TwitterException will throws when Twitter service or network is unavailable, or the user // has not authorized try { extraDict.put("access_token", twitter.getOAuthAccessToken().getToken()); } catch (TwitterException twitterExc) { SoomlaUtils.LogError(TAG, twitterExc.getErrorMessage()); } } // Twitter does not supply email access: https://dev.twitter.com/faq#26 UserProfile result = new UserProfile( RefProvider, String.valueOf(user.getId()), user.getScreenName(), "", firstName, lastName, extraDict); // No gender information on Twitter: // https://twittercommunity.com/t/how-to-find-male-female-accounts-in-following-list/7367 result.setGender(""); // No birthday on Twitter: // https://twittercommunity.com/t/how-can-i-get-email-of-user-if-i-use-api/7019/16 result.setBirthday(""); result.setLanguage(user.getLang()); result.setLocation(user.getLocation()); result.setAvatarLink(user.getBiggerProfileImageURL()); return result; }
public void testUnparsable() throws Exception { String str; str = ""; try { DataObjectFactory.createStatus(str); fail("should fail"); } catch (TwitterException expected) { } catch (Error notExpected) { fail("failed" + notExpected.getMessage()); } try { DataObjectFactory.createStatus(str); fail("should fail"); } catch (TwitterException expected) { } catch (Error notExpected) { fail("failed" + notExpected.getMessage()); } str = "{\"in_reply_to_status_id_str\":null,\"place\":null,\"in_reply_to_user_id\":null,\"text\":\"working\",\"contributors\":null,\"retweet_count\":0,\"in_reply_to_user_id_str\":null,\"retweeted\":false,\"id_str\":\"794626207\",\"source\":\"\\u003Ca href=\\\"http:\\/\\/twitterhelp.blogspot.com\\/2008\\/05\\/twitter-via-mobile-web-mtwittercom.html\\\" rel=\\\"nofollow\\\"\\u003Emobile web\\u003C\\/a\\u003E\",\"truncated\":false,\"geo\":null,\"in_reply_to_status_id\":null,\"favorited\":false,\"user\":{\"show_all_inline_media\":false,\"geo_enabled\":false,\"profile_background_tile\":false,\"time_zone\":null,\"favourites_count\":0,\"description\":null,\"friends_count\":0,\"profile_link_color\":\"0084B4\",\"location\":null,\"profile_sidebar_border_color\":\"C0DEED\",\"id_str\":\"14481043\",\"url\":null,\"follow_request_sent\":false,\"statuses_count\":1,\"profile_use_background_image\":true,\"lang\":\"en\",\"profile_background_color\":\"C0DEED\",\"profile_image_url\":\"http:\\/\\/a3.twimg.com\\/a\\/1292975674\\/images\\/default_profile_3_normal.png\",\"profile_background_image_url\":\"http:\\/\\/a3.twimg.com\\/a\\/1292975674\\/images\\/themes\\/theme1\\/bg.png\",\"followers_count\":44,\"protected\":false,\"contributors_enabled\":false,\"notifications\":false,\"screen_name\":\"Yusuke\",\"name\":\"Yusuke\",\"is_translator\":false,\"listed_count\":1,\"following\":false,\"verified\":false,\"profile_text_color\":\"333333\",\"id\":14481043,\"utc_offset\":null,\"created_at\":\"Tue Apr 22 21:49:13 +0000 2008\",\"profile_sidebar_fill_color\":\"DDEEF6\"},\"id\":794626207,\"coordinates\":null,\"in_reply_to_screen_name\":null,\"created_at\":\"Tue Apr 2200 21:49:34 +0000 2008\""; try { DataObjectFactory.createCategory(str); fail("should fail"); } catch (TwitterException expected) { expected.printStackTrace(); } catch (Error notExpected) { fail("failed" + notExpected.getMessage()); } try { DataObjectFactory.createCategory(str); fail("should fail"); } catch (TwitterException expected) { } catch (Error notExpected) { fail("failed" + notExpected.getMessage()); } }
public static void main(String[] args) { try { meet myobj = new meet(); // load jsiconfig.txt ArrayList<String> myconfiglist = new ArrayList<String>(); myconfiglist = myobj.loadArray("jsiconfig.txt"); // The text uri // "mongodb://*****:*****@ds023288.mongolab.com:23288/sample"; String textUri = myconfiglist.get(0); // Create MongoClientURI object from which you get MongoClient obj MongoClientURI uri = new MongoClientURI(textUri); // Connect to that uri MongoClient m = new MongoClient(uri); // get the database named sample String DBname = myconfiglist.get(1); DB d = m.getDB(DBname); // get the collection mycollection in sample String collectionName = myconfiglist.get(2); DBCollection collection = d.getCollection(collectionName); // System.out.println("Config: "+textUri+":"+DBname+":"+collectionName); // twitter4j // Twitter twitter = new TwitterFactory().getInstance(); Twitter twitter = new TwitterFactory().getSingleton(); User user = twitter.verifyCredentials(); // Twitter collection of latest tweets into the home account - defaulted to latest 20 tweets// ////////////////////////////////////////////////////////////// ArrayList<String> mylatesttweetslist = new ArrayList<String>(); // get list of tweets from a user or the next tweet listed try { long actid = 0; // twitter.createFriendship(actid); // The factory instance is re-useable and thread safe. // Twitter twitter = TwitterFactory.getSingleton(); List<Status> statuses = twitter.getHomeTimeline(); System.out.println("Showing home timeline."); for (Status status : statuses) { // System.out.println(status.getUser().getName() + ":" +status.getText()); // Addes timeline to an array String mytweets = status.getUser().getName() + ":" + status.getText(); mylatesttweetslist.add(mytweets); } ; } catch (TwitterException te) { te.printStackTrace(); System.out.println("Failed to get timeline: " + te.getMessage()); System.exit(-1); } // MongoDB Insert Below // ////////////////////////// // System Date Date sd = new Date(); String sysdate = sd.toString(); // Toggle the below to display and insert the transactions as required boolean showtrans = true; boolean inserttrans = true; // checkArray - loads args to a text string to allow the contains function String checkString = ""; for (int ck = 0; ck < args.length; ck++) { checkString = checkString + args[ck]; } ; // display transactions flag on runnning jsimongo eg: java jsimongo -d will NOT display // transactions // insert transactions flag on runnning jsimongo eg: java jsimongo -i will NOT insert // transactions if (args.length > 0) { if (checkString.contains("-d")) showtrans = false; if (checkString.contains("-i")) inserttrans = false; } ; int x = 0; for (String atweet : mylatesttweetslist) { x++; // Display tweets to console if (showtrans == true) { System.out.println("tweet : " + atweet); System.out.println("Created_DateTime : " + sysdate); // was sysdate } ; // Insert JSON into MongoDB if (inserttrans == true) { BasicDBObject b = new BasicDBObject(); System.out.println("tweet : " + atweet); System.out.println("Created_DateTime : " + sysdate); // was sysdate // Insert the JSON object into the chosen collection collection.insert(b); } ; Thread.sleep(1); } ; System.out.println("End, the number of tweets inserted at this time was: " + x); } catch (Exception e) { e.printStackTrace(); } }
/** * Called whenever an exception has occurred while running a Twitter4J asynchronous action * * @param e The exception which was thrown * @param twitterMethod The method which failed */ @Override public void onException(TwitterException e, TwitterMethod twitterMethod) { SoomlaUtils.LogDebug(TAG, "General fail " + e.getMessage()); failListener(preformingAction, e.getMessage()); }