From e1e3b72f692eaa40ed82c11e252965f3c37bb34d Mon Sep 17 00:00:00 2001 From: "JANGJEONGHYEON\\JJH" Date: Fri, 28 Jul 2017 19:33:24 +0900 Subject: [PATCH] add attribute to tweet model: postTime --- src/main/java/me/jhenrique/main/Main.java | 136 +++++++++--------- .../me/jhenrique/manager/TweetManager.java | 9 +- src/main/java/me/jhenrique/model/Tweet.java | 13 +- 3 files changed, 89 insertions(+), 69 deletions(-) diff --git a/src/main/java/me/jhenrique/main/Main.java b/src/main/java/me/jhenrique/main/Main.java index b7fce7c..b850cbf 100644 --- a/src/main/java/me/jhenrique/main/Main.java +++ b/src/main/java/me/jhenrique/main/Main.java @@ -5,71 +5,75 @@ import me.jhenrique.model.Tweet; public class Main { - private static final String USERNAME = "Username: "; - private static final String RETWEETS = "Retweets: "; - private static final String TEXT = "Text: "; - private static final String MENTIONS = "Mentions: "; - private static final String HASHTAGS = "Hashtags: "; + private static final String USERNAME = "Username: "; + private static final String RETWEETS = "Retweets: "; + private static final String TEXT = "Text: "; + private static final String MENTIONS = "Mentions: "; + private static final String HASHTAGS = "Hashtags: "; + private static final String POSTTIME = "PostTime:"; + + public static void main(String[] args) { + /** + * Reusable objects + */ + TwitterCriteria criteria = null; + Tweet t = null; + + /** + * Example 1 - Get tweets by username + **/ + + criteria = TwitterCriteria.create() + .setUsername("barackobama") + .setMaxTweets(1); + t = TweetManager.getTweets(criteria).get(0); + + System.out.println("### Example 1 - Get tweets by username [barackobama]"); + System.out.println(POSTTIME+t.getPostTime()); + System.out.println(USERNAME + t.getUsername()); + System.out.println(RETWEETS + t.getRetweets()); + System.out.println(TEXT + t.getText()); + System.out.println(MENTIONS + t.getMentions()); + System.out.println(HASHTAGS + t.getHashtags()); + System.out.println(); + + /** + * Example 2 - Get tweets by query search + **/ + criteria = TwitterCriteria.create() + .setQuerySearch("europe refugees") + .setSince("2015-05-01") + .setUntil("2015-09-30") + .setMaxTweets(1); + t = TweetManager.getTweets(criteria).get(0); + + System.out.println("### Example 2 - Get tweets by query search [europe refugees]"); + System.out.println(POSTTIME+t.getPostTime()); + System.out.println(USERNAME + t.getUsername()); + System.out.println(RETWEETS + t.getRetweets()); + System.out.println(TEXT + t.getText()); + System.out.println(MENTIONS + t.getMentions()); + System.out.println(HASHTAGS + t.getHashtags()); + System.out.println(); + + /** + * Example 3 - Get tweets by username and bound dates + **/ + criteria = TwitterCriteria.create() + .setUsername("barackobama") + .setSince("2015-09-10") + .setUntil("2015-09-12") + .setMaxTweets(1); + t = TweetManager.getTweets(criteria).get(0); + + System.out.println("### Example 3 - Get tweets by username and bound dates [barackobama, '2015-09-10', '2015-09-12']"); + System.out.println(POSTTIME+t.getPostTime()); + System.out.println(USERNAME + t.getUsername()); + System.out.println(RETWEETS + t.getRetweets()); + System.out.println(TEXT + t.getText()); + System.out.println(MENTIONS + t.getMentions()); + System.out.println(HASHTAGS + t.getHashtags()); + System.out.println(); + } - public static void main(String[] args) { - /** - * Reusable objects - */ - TwitterCriteria criteria = null; - Tweet t = null; - - /** - * Example 1 - Get tweets by username - **/ - - criteria = TwitterCriteria.create() - .setUsername("barackobama") - .setMaxTweets(1); - t = TweetManager.getTweets(criteria).get(0); - - System.out.println("### Example 1 - Get tweets by username [barackobama]"); - System.out.println(USERNAME + t.getUsername()); - System.out.println(RETWEETS + t.getRetweets()); - System.out.println(TEXT + t.getText()); - System.out.println(MENTIONS + t.getMentions()); - System.out.println(HASHTAGS + t.getHashtags()); - System.out.println(); - - /** - * Example 2 - Get tweets by query search - **/ - criteria = TwitterCriteria.create() - .setQuerySearch("europe refugees") - .setSince("2015-05-01") - .setUntil("2015-09-30") - .setMaxTweets(1); - t = TweetManager.getTweets(criteria).get(0); - - System.out.println("### Example 2 - Get tweets by query search [europe refugees]"); - System.out.println(USERNAME + t.getUsername()); - System.out.println(RETWEETS + t.getRetweets()); - System.out.println(TEXT + t.getText()); - System.out.println(MENTIONS + t.getMentions()); - System.out.println(HASHTAGS + t.getHashtags()); - System.out.println(); - - /** - * Example 3 - Get tweets by username and bound dates - **/ - criteria = TwitterCriteria.create() - .setUsername("barackobama") - .setSince("2015-09-10") - .setUntil("2015-09-12") - .setMaxTweets(1); - t = TweetManager.getTweets(criteria).get(0); - - System.out.println("### Example 3 - Get tweets by username and bound dates [barackobama, '2015-09-10', '2015-09-12']"); - System.out.println(USERNAME + t.getUsername()); - System.out.println(RETWEETS + t.getRetweets()); - System.out.println(TEXT + t.getText()); - System.out.println(MENTIONS + t.getMentions()); - System.out.println(HASHTAGS + t.getHashtags()); - System.out.println(); - } - } \ No newline at end of file diff --git a/src/main/java/me/jhenrique/manager/TweetManager.java b/src/main/java/me/jhenrique/manager/TweetManager.java index c7e29c6..a454bea 100644 --- a/src/main/java/me/jhenrique/manager/TweetManager.java +++ b/src/main/java/me/jhenrique/manager/TweetManager.java @@ -1,6 +1,7 @@ package me.jhenrique.manager; import java.net.URLEncoder; +import java.sql.Time; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -102,7 +103,9 @@ public static List getTweets(TwitterCriteria criteria) { } Date date = new Date(dateMs); - + Time time = new Time(dateMs); + + Tweet t = new Tweet(); t.setId(id); t.setPermalink("https://twitter.com"+permalink); @@ -114,7 +117,9 @@ public static List getTweets(TwitterCriteria criteria) { t.setMentions(processTerms("(@\\w*)", txt)); t.setHashtags(processTerms("(#\\w*)", txt)); t.setGeo(geo); - + t.setPostTime(time); + + results.add(t); if (criteria.getMaxTweets() > 0 && results.size() >= criteria.getMaxTweets()) { diff --git a/src/main/java/me/jhenrique/model/Tweet.java b/src/main/java/me/jhenrique/model/Tweet.java index ec1cd98..4c300e4 100644 --- a/src/main/java/me/jhenrique/model/Tweet.java +++ b/src/main/java/me/jhenrique/model/Tweet.java @@ -1,5 +1,6 @@ package me.jhenrique.model; +import java.sql.Time; import java.util.Date; /** @@ -28,6 +29,9 @@ public class Tweet { private String hashtags; private String geo; + + private Time postTime; + public Tweet() { } @@ -111,5 +115,12 @@ public String getGeo() { public void setGeo(String geo) { this.geo = geo; } - + + public Time getPostTime() { + return postTime; + } + + public void setPostTime(Time postTime) { + this.postTime = postTime; + } } \ No newline at end of file