twitter4j
Class TwitterStream

java.lang.Object
  extended by twitter4j.TwitterSupport
      extended by twitter4j.TwitterStream

public class TwitterStream
extends TwitterSupport

A java reporesentation of the Twitter Streaming API

Since:
Twitter4J 2.0.4
Author:
Yusuke Yamamoto - yusuke at mac.com

Nested Class Summary
(package private)  class TwitterStream.StreamHandlingThread
           
 
Field Summary
private static boolean DEBUG
           
private  TwitterStream.StreamHandlingThread handler
           
private  int retryPerMinutes
           
private  StatusListener statusListener
           
 
Fields inherited from class twitter4j.TwitterSupport
http, source, USE_SSL
 
Constructor Summary
TwitterStream()
          Constructs a TwitterStream instance.
TwitterStream(java.lang.String userId, java.lang.String password)
           
TwitterStream(java.lang.String userId, java.lang.String password, StatusListener listener)
           
 
Method Summary
 void birddog(int count, int[] follow)
          Deprecated. use filter() instead
 void cleanup()
           
 void filter(int count, int[] follow, java.lang.String[] track)
          See birddog above.
 void firehose(int count)
          Starts listening on all public statuses.
 void follow(int[] follow)
          Deprecated. use filter() instead
 void gardenhose()
          Deprecated. use sample() instead
 StatusStream getBirddogStream(int count, int[] follow)
          Deprecated. use filterStream() instead
 StatusStream getFilterStream(int count, int[] follow, java.lang.String[] track)
          Returns stream of public statuses that match one or more filter predicates.
 StatusStream getFirehoseStream(int count)
          Returns a status stream of all public statuses.
 StatusStream getFollowStream(int[] follow)
          Deprecated. use filterStream() instead
 StatusStream getGardenhoseStream()
          Deprecated. use sampleStream() instead
 StatusStream getRetweetStream()
          Returns a stream of all retweets.
 StatusStream getSampleStream()
          Returns a stream of random sample of all public statuses.
 StatusStream getShadowStream(int count, int[] follow)
          Deprecated. use filterStream() instead
 StatusStream getSpritzerStream()
          Deprecated. use sampleStream() instead
 StatusListener getStatusListener()
           
private  java.lang.String getStreamBaseURL()
           
 StatusStream getTrackStream(java.lang.String[] keywords)
          Deprecated. use filterStream() instead
private  void log(java.lang.String message)
           
private  void log(java.lang.String message, java.lang.String message2)
           
 void retweet()
          Starts listening on all retweets.
 void sample()
          Starts listening on random sample of all public statuses.
 void setStatusListener(StatusListener statusListener)
           
 void shadow(int count, int[] follow)
          Deprecated. use filter() instead
 void spritzer()
          Deprecated. use sample() instead
private  void startHandler(TwitterStream.StreamHandlingThread handler)
           
private  java.lang.String toFollowString(int[] follows)
           
private  java.lang.String toTrackString(java.lang.String[] keywords)
           
 void track(java.lang.String[] keywords)
          Deprecated. use filter() instead
 
Methods inherited from class twitter4j.TwitterSupport
forceUsePost, getClientURL, getClientVersion, getPassword, getSource, getUserAgent, getUserId, isUsePostForced, setClientURL, setClientVersion, setHttpConnectionTimeout, setHttpProxy, setHttpProxyAuth, setHttpReadTimeout, setPassword, setRequestHeader, setRetryCount, setRetryIntervalSecs, setSource, setUserAgent, setUserId
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEBUG

private static final boolean DEBUG

statusListener

private StatusListener statusListener

handler

private TwitterStream.StreamHandlingThread handler

retryPerMinutes

private int retryPerMinutes
Constructor Detail

TwitterStream

public TwitterStream()
Constructs a TwitterStream instance. UserID and password should be provided by either twitter4j.properties or system property. since Twitter4J 2.0.10


TwitterStream

public TwitterStream(java.lang.String userId,
                     java.lang.String password)

TwitterStream

public TwitterStream(java.lang.String userId,
                     java.lang.String password,
                     StatusListener listener)
Method Detail

firehose

public void firehose(int count)
              throws TwitterException
Starts listening on all public statuses. Available only to approved parties and requires a signed agreement to access. Please do not contact us about access to the firehose. If your service warrants access to it, we'll contact you.

Parameters:
count - Indicates the number of previous statuses to stream before transitioning to the live stream.
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - firehose

getFirehoseStream

public StatusStream getFirehoseStream(int count)
                               throws TwitterException
Returns a status stream of all public statuses. Available only to approved parties and requires a signed agreement to access. Please do not contact us about access to the firehose. If your service warrants access to it, we'll contact you.

Parameters:
count - Indicates the number of previous statuses to stream before transitioning to the live stream.
Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - firehose

retweet

public void retweet()
             throws TwitterException
Starts listening on all retweets. The retweet stream is not a generally available resource. Few applications require this level of access. Creative use of a combination of other resources and various access levels can satisfy nearly every application use case. As of 9/11/2009, the site-wide retweet feature has not yet launched, so there are currently few, if any, retweets on this stream.

Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.10
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - retweet

getRetweetStream

public StatusStream getRetweetStream()
                              throws TwitterException
Returns a stream of all retweets. The retweet stream is not a generally available resource. Few applications require this level of access. Creative use of a combination of other resources and various access levels can satisfy nearly every application use case. As of 9/11/2009, the site-wide retweet feature has not yet launched, so there are currently few, if any, retweets on this stream.

Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.10
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - firehose

sample

public void sample()
            throws TwitterException
Starts listening on random sample of all public statuses. The default access level provides a small proportion of the Firehose. The "Gardenhose" access level provides a proportion more suitable for data mining and research applications that desire a larger proportion to be statistically significant sample.

Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.10
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - sample

getSampleStream

public StatusStream getSampleStream()
                             throws TwitterException
Returns a stream of random sample of all public statuses. The default access level provides a small proportion of the Firehose. The "Gardenhose" access level provides a proportion more suitable for data mining and research applications that desire a larger proportion to be statistically significant sample.

Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.10
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - sample

filter

public void filter(int count,
                   int[] follow,
                   java.lang.String[] track)
            throws TwitterException
See birddog above. Allows following up to 200 users. Publicly available.

Parameters:
count - Indicates the number of previous statuses to stream before transitioning to the live stream.
follow - Specifies the users, by ID, to receive public tweets from.
track - Specifies keywords to track.
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.10
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - filter

getFilterStream

public StatusStream getFilterStream(int count,
                                    int[] follow,
                                    java.lang.String[] track)
                             throws TwitterException
Returns stream of public statuses that match one or more filter predicates. At least one predicate parameter, track or follow, must be specified. Both parameters may be specified which allows most clients to use a single connection to the Streaming API.

Parameters:
follow - Specifies the users, by ID, to receive public tweets from.
Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.10
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - filter

gardenhose

public void gardenhose()
                throws TwitterException
Deprecated. use sample() instead

Starts listening on a percentage of all public statuses, suitable for data mining and research applications that require a statistically significant sample. Available only to approved parties and requires a signed agreement to access.

Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - gardenhose

getGardenhoseStream

public StatusStream getGardenhoseStream()
                                 throws TwitterException
Deprecated. use sampleStream() instead

Returns a status stream for a percentage of all public statuses, suitable for data mining and research applications that require a statistically significant sample. Available only to approved parties and requires a signed agreement to access.

Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - gardenhose

spritzer

public void spritzer()
              throws TwitterException
Deprecated. use sample() instead

Starts listening on a percentage of all public statuses, suitable for small projects that don't require a statistically significant sample. Publicly available.

Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - spritizer

getSpritzerStream

public StatusStream getSpritzerStream()
                               throws TwitterException
Deprecated. use sampleStream() instead

Returns a status stream for a percentage of all public statuses, suitable for small projects that don't require a statistically significant sample. Publicly available.

Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - spritizer

birddog

public void birddog(int count,
                    int[] follow)
             throws TwitterException
Deprecated. use filter() instead

Starts listening on public statuses from a specified set of users, by ID. Requires use of the "follow" parameter, documented below. Allows following up to 200,000 users. Available only to approved parties and requires a signed agreement to access.

Parameters:
count - Indicates the number of previous statuses to stream before transitioning to the live stream.
follow - Specifies the users, by ID, to receive public tweets from.
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - birddog

getBirddogStream

public StatusStream getBirddogStream(int count,
                                     int[] follow)
                              throws TwitterException
Deprecated. use filterStream() instead

Returns a status stream for public statuses from a specified set of users, by ID. Requires use of the "follow" parameter, documented below. Allows following up to 200,000 users. Available only to approved parties and requires a signed agreement to access.

Parameters:
count - Indicates the number of previous statuses to stream before transitioning to the live stream.
follow - Specifies the users, by ID, to receive public tweets from.
Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - birddog

shadow

public void shadow(int count,
                   int[] follow)
            throws TwitterException
Deprecated. use filter() instead

See birddog above. Allows following up to 2,000 users.

Parameters:
count - Indicates the number of previous statuses to stream before transitioning to the live stream.
follow - Specifies the users, by ID, to receive public tweets from.
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - shadow

getShadowStream

public StatusStream getShadowStream(int count,
                                    int[] follow)
                             throws TwitterException
Deprecated. use filterStream() instead

See birddog above. Allows following up to 2,000 users.

Parameters:
count - Indicates the number of previous statuses to stream before transitioning to the live stream.
follow - Specifies the users, by ID, to receive public tweets from.
Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - shadow

follow

public void follow(int[] follow)
            throws TwitterException
Deprecated. use filter() instead

See birddog above. Allows following up to 200 users. Publicly available.

Parameters:
follow - Specifies the users, by ID, to receive public tweets from.
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - follow

getFollowStream

public StatusStream getFollowStream(int[] follow)
                             throws TwitterException
Deprecated. use filterStream() instead

See birddog above. Allows following up to 200 users. Publicly available.

Parameters:
follow - Specifies the users, by ID, to receive public tweets from.
Returns:
StatusStream
Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.4
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - follow

toFollowString

private java.lang.String toFollowString(int[] follows)

track

public void track(java.lang.String[] keywords)
           throws TwitterException
Deprecated. use filter() instead

Returns public statuses that contain at least one of the specified keywords. Requires use of the "track" parameter, documented below. Allows following up to 20 keywords, subject to Track Limitations, described above. Predicate terms are case-insensitive logical ORs. Terms are exact-matched, and exact-matched ignoring punctuation. Publicly available. Examples: The predicate Twitter will match all public statuses with the following space delimited tokens in their text field: TWITTER, twitter, "Twitter", twitter., #twitter and @twitter. The following tokens will not be matched: TwitterTracker and http://www.twitter.com,

Throws:
TwitterException - when Twitter service or network is unavailable
Since:
Twitter4J 2.0.9
See Also:
StatusStream, Twitter API Wiki / Streaming API Documentation - spritizer

getTrackStream

public StatusStream getTrackStream(java.lang.String[] keywords)
                            throws TwitterException
Deprecated. use filterStream() instead

Throws:
TwitterException
See Also:
getTrackStream(String[])

toTrackString

private java.lang.String toTrackString(java.lang.String[] keywords)

startHandler

private void startHandler(TwitterStream.StreamHandlingThread handler)
                   throws TwitterException
Throws:
TwitterException

cleanup

public void cleanup()

getStatusListener

public StatusListener getStatusListener()

setStatusListener

public void setStatusListener(StatusListener statusListener)

getStreamBaseURL

private java.lang.String getStreamBaseURL()

log

private void log(java.lang.String message)

log

private void log(java.lang.String message,
                 java.lang.String message2)