OSDN Git Service

指定したユーザが保持しているリスト一覧を取得する機能を追加
[nt-manager/nt-manager.git] / test / TestDriver.java
1 import java.io.BufferedReader;
2 import java.io.FileNotFoundException;
3 import java.io.IOException;
4 import java.io.InputStreamReader;
5 import java.util.List;
6 import java.util.logging.Level;
7 import java.util.logging.Logger;
8
9 import org.xml.sax.SAXParseException;
10 import twitter.action.TweetSearchResultGetter;
11
12 import twitter.log.TwitterLogManager;
13 import twitter.manage.TweetManager;
14 import twitter.task.TweetTaskException;
15 import twitter.task.TweetTaskManager;
16 import twitter.task.TweetUpdateTask;
17 import twitter4j.Status;
18 import twitter4j.Twitter;
19 import twitter4j.TwitterException;
20 import twitter4j.TwitterFactory;
21 import twitter4j.UserList;
22 import twitter4j.conf.Configuration;
23 import twitter4j.conf.ConfigurationBuilder;
24 import twitter4j.http.AccessToken;
25 import twitter4j.http.RequestToken;
26
27 public class TestDriver {
28         private static final String CONSUMER_KEY = "tbo5erit2M2ZzN6n8tEYcA";
29     private static final String CONSUMER_SECRET = "tODurbdySLYU1pKjtB3MQTDRBGy562dHzVf7d62mm8";
30
31     /***
32      * ユーザIDとパスワードで認証する。
33      *
34      * @param userId
35      *            ユーザID
36      * @param password
37      *            パスワード
38      * @return Twitterクラスのインスタンス<BR>
39      *         認証に失敗した場合はnull
40      */
41     public static Twitter getInstance(String userId, String password) {
42         Configuration conf = getConfiguration();
43
44         TwitterFactory twitterfactory = new TwitterFactory(conf);
45         Twitter twitter = twitterfactory.getInstance(userId, password);
46
47         try {
48             twitter.getOAuthAccessToken();
49         } catch (TwitterException e) {
50             return null;
51         }
52
53         return twitter;
54     }
55
56     /***
57      * アクセストークンを使って認証する
58      *
59      * @param accessToken
60      *            アクセストークン
61      * @return Twitterクラスのインスタンス<BR>
62      *         認証に失敗した場合はnull
63      */
64     public synchronized static Twitter getOAuthAuthorizedInstance(String token, String token_secret) {
65         Configuration conf = getConfiguration();
66         TwitterFactory twitterfactory = new TwitterFactory(conf);
67         Twitter twitter = twitterfactory.getOAuthAuthorizedInstance(new AccessToken(token, token_secret));
68
69         try {
70             twitter.getId();
71         } catch (TwitterException e) {
72             return null;
73         }
74
75         return twitter;
76     }
77
78     /***
79      * Configurationを生成する
80      *
81      * @return
82      */
83     private static Configuration getConfiguration() {
84         ConfigurationBuilder confbuilder = new ConfigurationBuilder();
85         confbuilder.setOAuthConsumerKey(CONSUMER_KEY);
86         confbuilder.setOAuthConsumerSecret(CONSUMER_SECRET);
87         return confbuilder.build();
88     }
89
90     public static void main(String[] args) {
91         TweetManager manager = new TweetManager();
92         try {
93             manager.loginTwitter();
94             List<UserList> userlist = manager.getUserLists("applegarden_01");
95             for(UserList u : userlist ) {
96                 System.out.println( u );
97             }
98         } catch (FileNotFoundException ex) {
99             Logger.getLogger(TestDriver.class.getName()).log(Level.SEVERE, null, ex);
100         } catch (IOException ex) {
101             Logger.getLogger(TestDriver.class.getName()).log(Level.SEVERE, null, ex);
102         }
103
104     }
105 }