X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=workspace%2F.metadata%2F.plugins%2Forg.eclipse.core.resources%2F.history%2F56%2F50c41d65ea6d001110a188bae663c898;fp=workspace%2F.metadata%2F.plugins%2Forg.eclipse.core.resources%2F.history%2F56%2F50c41d65ea6d001110a188bae663c898;h=0000000000000000000000000000000000000000;hb=07d63fb4ad57a32cdde8e8882a8f86151e6d1d3f;hp=a37830c7a8ae695f4cb501dc2a513bc6b3fba429;hpb=9be7d50b45c555b120e4ec8fa8b5928afa3cc942;p=traindelaybot%2Fsource.git diff --git a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/50c41d65ea6d001110a188bae663c898 b/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/50c41d65ea6d001110a188bae663c898 deleted file mode 100644 index a37830c..0000000 --- a/workspace/.metadata/.plugins/org.eclipse.core.resources/.history/56/50c41d65ea6d001110a188bae663c898 +++ /dev/null @@ -1,170 +0,0 @@ -package com.yuji.tdb.twitter; - -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Date; -import java.util.List; -import java.util.TimeZone; -import java.util.logging.Logger; - -import twitter4j.Query; -import twitter4j.QueryResult; -import twitter4j.Status; -import twitter4j.Tweet; -import twitter4j.Twitter; -import twitter4j.TwitterException; -import twitter4j.TwitterFactory; -import twitter4j.auth.AccessToken; -import twitter4j.conf.ConfigurationBuilder; - -import com.yuji.tdb.common.CommonUtil; -import com.yuji.tdb.db.Train; -import com.yuji.tdb.db.TrainDao; -import com.yuji.tdb.utility.StringUtility; - -public class TwitterUtil { - private static final Logger log = Logger - .getLogger(TwitterUtil.class.getName()); - private static TwitterUtil instance = null; - private static Object obj = new Object(); - private DateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); - - public static TwitterUtil getInstance() { - if (instance == null) { - synchronized (obj) { - if (instance == null) { - instance = new TwitterUtil(); - } - } - } - return instance; - } - - private TwitterUtil() { - df.setTimeZone(TimeZone.getTimeZone("JST")); - } - - public void main(String consumerKey, String consumerSecret, AccessToken accessToken) { - try { - ConfigurationBuilder confBuilder = new ConfigurationBuilder(); - confBuilder.setDebugEnabled(true).setOAuthConsumerKey(consumerKey) - .setOAuthConsumerSecret(consumerSecret); - TwitterFactory factory = new TwitterFactory(confBuilder.build()); - Twitter twitter = factory.getInstance(accessToken); - - List list = getTrainList(); - for (Train train : list){ - twite(twitter, train); - } - } catch (TwitterException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - log.severe(e.toString()); - } - } - - private void twite(Twitter twitter, Train train) throws TwitterException { - Query query = new Query(); - //query.setRpp(1000); // TODO - query.setQuery(train.getSearchWord()); - QueryResult result = twitter.search(query); - List tweets = result.getTweets(); - - Calendar cal = Calendar.getInstance(); - Date date = cal.getTime(); - long cur = date.getTime(); - - int count = 0; - int hit = 0; - int mhit = 0; - - int index; - int mindex = 0; - int size = tweets.size(); - for (index = 0; index < size; index++) { - Tweet tweet = tweets.get(index); - - Date at = tweet.getCreatedAt(); - long t = at.getTime(); - - String message = tweet.getText(); - - if (t < cur - 30 * 60 * 1000){ - System.out.println("~" + tweet.getFromUser() + " - " - + tweet.getText() + at); - continue; - } - hit = filter(message); - if (hit <= 0) { - System.out.println("¢" + tweet.getFromUser() + " - " - + tweet.getText() + at); - // ’x‰„ˆÈŠO‚̏‘‚«ž‚Ý - continue; - } - if (hit > mhit){ - hit = mhit; - mindex = index; - } - - System.out.println("@" + tweet.getFromUser() + " - " - + tweet.getText() + at); - count++; - } - - String message = "[" + train.getName() + "] "; - if (count < train.getCount()){ - message += "’x‰„‚È‚µ " + df.format(date); - } - else { - int N = 100; - - String sample = tweets.get(mindex).getText(); - sample = CommonUtil.replaceString(sample, "@", "(a)"); - sample = StringUtility.parseSubstring(sample, N); - message += sample + " " + df.format(date) + " count=" + count; - } - System.out.println(message); //TODO - Status status = twitter.updateStatus(message); //TODO - } - - private List getTrainList(){ - TrainDao dao = TrainDao.getInstance(); - List list = dao.search(); - if (list.size() <= 0){ - Train train; - - train = new Train("‹ž•l“Œ–kü", "‹ž•l“Œ–k", 5); - dao.put(train); - train = new Train("“ŒŠC“¹ü", "“ŒŠC“¹", 5); - dao.put(train); - train = new Train("‹ž•l‹}sü", "‹ž‹}", 5); - dao.put(train); - list = dao.search(); - } - return list; - } - - private static List keywords = null; - - public int filter(String text) { - if (keywords == null) { - keywords = new ArrayList(); - keywords.add("’x‰„"); - keywords.add("’x‚ê"); - keywords.add("U‚è‘Ö‚¦"); - keywords.add("U‘Ö"); - keywords.add("’âŽ~"); - keywords.add("Ž–ŒÌ"); - } - - int count = 0; - for (String keyword : keywords) { - if (text.indexOf(keyword) >= 0) { - count++; - } - } - return count; - } -}