*/
public void startStreaming() {
this.isUsingStreaming = true;
- //TODO: ここでストリーミング開始処理
+ this.tweetManager.getStreamManager().start();
try {
saveProperties();
} catch (IOException ex) {
*/
public void stopStreaming() {
this.isUsingStreaming = false;
- //TODO: ここでストリーミング停止処理
+ this.tweetManager.getStreamManager().stop();
try {
saveProperties();
} catch (IOException ex) {
//Streaming APIを利用しているかどうかを表示
this.tweetManager.getStreamManager().addCollectionLifeCycleListener(this);
+ //streaming利用時はstreamingを開始する
+ if( this.mainAction.isUsingStreaming() ) {
+ this.mainAction.startStreaming();
+ }
}
/**
import java.util.Set;\r
\r
import twitter.action.streaming.TweetStreamingListener;\r
+import twitter4j.ConnectionLifeCycleListener;\r
import twitter4j.DirectMessage;\r
import twitter4j.FilterQuery;\r
import twitter4j.Status;\r
* @author nishio\r
*\r
*/\r
-public class TweetSearchStream extends StatusAdapter implements Runnable{\r
+public class TweetSearchStream extends StatusAdapter implements Runnable, ConnectionLifeCycleListener{\r
//streaming\r
private TwitterStream twitterStream = null;\r
//Filter query\r
this.twitterStream = new TwitterStreamFactory().getInstance();\r
this.twitterStream.setOAuthConsumer(consumerKey, consumerSecret);\r
this.twitterStream.setOAuthAccessToken(ac);\r
+ this.twitterStream.addConnectionLifeCycleListener(this);\r
\r
filter = new FilterQuery();\r
listeners = new HashMap<String, TweetStreamingListener>();\r
}\r
}\r
\r
+ @Override\r
+ public void onConnect() {\r
+ System.out.println("search started");\r
+ }\r
+ \r
+ @Override\r
+ public void onDisconnect() {\r
+ System.out.println("search stopped");\r
+ }\r
+ \r
+ @Override\r
+ public void onCleanUp() {\r
+ //nothing\r
+ }\r
+\r
}\r
this.twitterStream.setOAuthConsumer(consumerKey, consumerSecret);\r
this.twitterStream.setOAuthAccessToken(ac);\r
this.twitterStream.addListener(this);\r
- this.twitterStream.user();\r
+ }\r
+ \r
+ /**\r
+ * streaming開始\r
+ */\r
+ public void start() {\r
+ this.twitterStream.user();\r
+ }\r
+ \r
+ /**\r
+ * streaming停止\r
+ */\r
+ public void stop() {\r
+ this.twitterStream.cleanUp();\r
}\r
\r
/**\r
public void addCollectionLifeCycleListener(ConnectionLifeCycleListener listener) {\r
this.userStream.addConnectionLifeCycleListener(listener);\r
}\r
+ \r
+ /**\r
+ * streaming開始\r
+ */\r
+ public void start() {\r
+ this.userStream.start();\r
+ }\r
+ \r
+ /**\r
+ * streaming停止\r
+ */\r
+ public void stop() {\r
+ this.userStream.stop();\r
+ }\r
}\r