Difference between revisions of "ECE497 Project: Twitter Java Application"

From eLinux.org
Jump to: navigation, search
m (Executive Summary)
m (Moved to Winter1112 category)
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:ECE497]]
+
[[Category:ECE497Winter1112]]
  
 
Team members: [[user:Zitnikdj|David Zitnik]]
 
Team members: [[user:Zitnikdj|David Zitnik]]
Line 5: Line 5:
 
== Grade ==
 
== Grade ==
  
Have your Executive Summary only report the current state of the project. See Project Template for what to include.
+
You documentation is much leaner than all the others. I see no comments in your code.  You need to document the whole authentication process.
 +
 
 +
Have your '''Executive Summary''' only report the current state of the project. See Project Template for what to include. '''Highlights''' are missing.
 +
 
 +
I think you did a lot making this project work, but I'm unable to run it following your instructions and your documentation is very lean.
 +
 
 +
Project: 85
 +
Wiki:    80
 +
'''Total:'''  82.5
  
 
== Executive Summary ==
 
== Executive Summary ==
Line 18: Line 26:
 
Install the Java Development Kit on the beagle
 
Install the Java Development Kit on the beagle
  
opkg install openjdk-6-jdk
+
beagle$ '''opkg install openjdk-6-jdk'''  (4 minutes)
  
Download the Twitter4j Library from:
+
Download the Twitter4j Library from: [http://twitter4j.org/en/index.html http://twitter4j.org/en/index.html]
  
http://twitter4j.org/en/index.html
+
Extract the zip file into a directory of your choice.
  
Extract the zip file into a directory of your choice
+
Git Location: [https://github.com/Zitnikdj/BeagleTweet https://github.com/Zitnikdj/BeagleTweet]
  
Git Location:
+
or
  
https://github.com/Zitnikdj/BeagleTweet
+
beagle$ '''git clone git://github.com/yusuke/twitter4j.git'''
  
 
== User Instructions ==  
 
== User Instructions ==  
Line 36: Line 44:
 
Compiling .java files in directory
 
Compiling .java files in directory
  
javac -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar <filename>.java
+
beagle$ '''javac -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar <filename>.java'''
 
+
 
+
Or compiling all .java files at once
+
  
javac -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar *.java
+
Or compiling all .java files at once (about 6 seconds)
  
 +
beagle$ '''javac -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar *.java'''
  
 
Running the application
 
Running the application
  
java -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar:. Main
+
beagle$ '''java -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar:. Main'''
  
 
== Highlights ==
 
== Highlights ==

Latest revision as of 13:58, 16 July 2012


Team members: David Zitnik

Grade

You documentation is much leaner than all the others. I see no comments in your code. You need to document the whole authentication process.

Have your Executive Summary only report the current state of the project. See Project Template for what to include. Highlights are missing.

I think you did a lot making this project work, but I'm unable to run it following your instructions and your documentation is very lean.

Project: 85
Wiki:    80
Total:   82.5

Executive Summary

For my final project I would like to develop and compile Java code on the BeagleBoard to create an application for Twitter that allows a user to sign in from the Beagle and post tweets using the Java Twitter API called Twitter4J.

Currently I have a graphical interface built using the Java Swing library. The user can log in to his or her twitter account using twitters external authentication and then will be able to see their profile picture, screen name, and current status. This status can be updated as well as users can be searched for to have their profile pictures and status displayed below.

Installation Instructions

Install the Java Development Kit on the beagle

beagle$ opkg install openjdk-6-jdk  (4 minutes)

Download the Twitter4j Library from: http://twitter4j.org/en/index.html

Extract the zip file into a directory of your choice.

Git Location: https://github.com/Zitnikdj/BeagleTweet

or

beagle$ git clone git://github.com/yusuke/twitter4j.git

User Instructions

I compile and run my code on the beagle using the Open JDK6 and using the commands assuming the file Main.java has my main method in it and .java files are using the Twitter4j library:

Compiling .java files in directory

beagle$ javac -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar <filename>.java

Or compiling all .java files at once (about 6 seconds)

beagle$ javac -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar *.java

Running the application

beagle$ java -cp <directory where you saved the twitter4j library>/twitter4j-2.2.5/lib/twitter4j-core-2.2.5.jar:. Main

Highlights

Theory of Operation

The application is built using a basic Java Swing interface for the GUI but behind it is a server communication with the twitter authentication servers to log in a user using their OAuthentication keys. The application then uses server requests to pull down information and pictures to display them in the GUI from the Twitter4j library.

Work Breakdown

Developed Graphical Interface using Java Swing library

Learned how to compile Java code on the command line on the BeagleBoard

Learned how to do basic interfacing with the Twitter Java API (Twitter4j)

Conclusions

The project was more of a learning experience then originally thought of by learning a new API for Java. If given more time I would have liked to get more features and to somehow bypass the external authentication through twitters website.