First JFrame

3 May

Today I finally found some time (in college) to start creating the first JFrame with some panels. I chose to use a CardLayout JPanel with which I can show the complete login and authorization process in one JFrame. The panels I created are a login panel, shown when Twitthere is not run for the first time (so there are entires in the token file) and the loading screen shown when you log in.

Today or maybe tomorrow I will als create the other panels needed for the OAuth process, and maybe even start programming them so they actually do something!

Furthermore I updated the javadoc on SourceForge so if want the new version, go and grab it here:

Documentation
https://sourceforge.net/projects/twitthere/files/documentation/twitthere-0.1-javadoc.zip/download

Let me know if anything is wrong or you came up with a better solution!

— Léon

New logic

2 May

After giving the current (infra)structure some thought, I came to the conclusion that it didn’t suit my needs. The TwitterUser class was too complex and the OAuth authorization cycle should actually be a class by itself, so I extracted all OAuth functionality from the TwitterUser class to the newly created OAuth class. The TwitterUser class is still present, because we need it later on to make some custom methods (like asynchronous API calls) and it also stores its own access token and access token secret. Furthermore I added a constructor which makes it possible to create a TwitterUser with a token ID and token secret specified (received from the file by FileIO). The instance then automatically assigns an access token to itself using the OAuth class and the two parameters.

The basics for user authorization and registration are now complete. Twitthere can now authorize Twitter users by using OAuth and can serialize the token the users receive from the authorization cycle to a file. I hope that maybe today or else tomorrow I can start on creating the first JFrame containing the login screen.

Of course I’ll keep you posted, and check out the project summary at http://sourceforge.net/projects/twitthere if you are interested in the project!

— Léon

Version 0.1 (or actually 0.0.0.0.1) online

2 May

I just posted the very first version of the documentation on the web for you to view/download.

If you are interested, you can download the Javadoc here:

Documentation
https://sourceforge.net/projects/twitthere/files/documentation/twitthere-0.1-javadoc.zip/download

This version includes the first two classes I will be using, TwitterUser and FileIO. TwitterUser is responsible for all Twitter-related actions, like for example logging in and performing the OAuth dance on first use (getting access tokens from request tokens). FileIO (not finished yet) will then serialize these to a file for later use. It also recovers them from the specified file. I hope you enjoy seeing the very first Twitthere code in action and any comments are welcome of course!

If you’d like access to the SVN repository to check out the source code, please contact me.

— Léon

Welcome to Twitthere!

2 May

Welcome to the Twitthere blog! I just started developing Twitthere and I thought a blog might help to make the project into a success. But first I’ll shortly explain what Twitthere exactly is:

Twitthere is an open source platform-independant desktop client for Twitter, written in Java using the Twitter4j Java API library.

That is exactly what the application is. Like it says, Twitthere is open-source so you can contribute to the project (have a look at http://sourceforge.net/projects/twitthere). It is platform-independent, because it is written in Java and can therefore be installed on almost all systems. As the description also says it is specifically designed for desktop use (but laptops are also allowed to use it of course). The last piece of information is about the Twitter4j API library, which makes Twitthere possible. Please show the developers some respect at http://twitter4j.org !

I hope you enjoy reading this blog as much as I enjoy writing it, and keep checking this blog for updates (and maybe a pre-alpha release of Twitthere).

— Léon