A Java client for the Twitter Streaming API
Switch branches/tags
Nothing to show
Pull request Compare This branch is 10 commits behind gistinc:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This is a Java client for the Twitter streaming API, documented at


Source is available at


com.gist.twitter.TwitterClient connects to Twitter using the Jakarta
Commons HttpClient 3.1, http://hc.apache.org/httpclient-3.x/.  It
backs off and reconnects on HTTP and TCP errors as per the spec.  It
can connect using multiple sets of credentials at once.

TwitterClient is constructed with two helper objects.  This
functionality has been factored out since it's likely to vary wildly
according to need.

- A FilterParameterFetcher is called periodically to get the set of
  Twitter ids to follow and keywords to track.

- A TwitterStreamProcessor processes the actual data stream.  How this
  is done and how you filter and process the results are up to you.
  Twitter recommends handing off statuses via an asynchronous queueing
  mechanism, which is a good design.  If multiple credentials are
  used, all streams use the same TwitterStreamProcessor object which
  allows the content of the streams to be aggregated.

The example code provides rudimentary implementations of both of these
objects.  It will connect with the given credentials, track a given
set of Twitter ids, parse the JSON, and print it to stdout.
Essentially this just replicates the stream to stdout.