Let me share my idea of this GSoC project.
What I want to do with this project is to build a framework on top of Twitter4J.
Twitter4J is just a raw and thin wrapper of the Twitter API and there's a gap between actual apps and the library.
For example, if you want to create a simple Twitter client, you may want to use the Streaming API (to be precise, it's called "user stream") to receive timeline, DMs and such events in realtime.
Yes, there's already event-driven interfaces.
But once you get into it, you'll notice that you need to deal with network difficulties, application restarts and such.
To fill in the user timeline gap during the application disruption, you need to keep track of the last tweet id you received and retrieve tweets using the REST API, Search API.
With the framework, application developer will receive events transparently and there'll be no need to think about which endpoint to use. Instead, the framework will call the app.
The output of the project would be a combination of the framework itself and an example code which uses the framework.
Let me know if you have any question, and feel free to post ideas.
Thanks,
--
Yusuke Yamamoto
yus...@mac.com
this email is: [ ] bloggable/tweetable [x] private
follow me on : http://twitter.com/yusuke
subscribe me at : http://samuraism.jp/
The way I understand it, the framework would not be a replacement for
Twitter4J but would be built on top of it. Twitter4J gives you a very
direct access to the Twitter APIs, and that is what some people need,
but most applications are probably not interested in the nitty gritty
details and would prefer something that already performs some common
work in a sensible way, e.g. providing an always-up-to-date timeline
without querying it from Twitter every time.
I'm not sure in how well I understand the idea of it being a framework
though. Would that imply that it supplies events like "application
startup" to the application?
Simeon
you need to keep track of the last tweet id you received
Well, it'll be a separate project depending on Twitter4J, not a refactored version of Twitter4J.I would call it "a framework" because with the framework, your app will be called by the framework instead of calling the Twitter4J's API carefully.And the framework will take care of timeline, dm, user persistence on behalf of apps.I hope this will reduce thousands of lines of duplicate code in pre-existing apps.