mercredi 30 avril 2008

Project features!

I'm currently discussing with my mentor Cristina about the features the GUI would provide. I looked at the plugin management of other (open source) projects for inspiration. The features we discuss go as follows:

Repository management : Possibility to add/remove/manage custom bundle repositories. A repository would consist of an URL. At the root of the URL would be some file (probably XML file, similair to what Eclipse offers) that provides the bundles information (and their dependencies).

Tree-like table in the GUI: The plugins from a repository will be shown in a table, structured like a tree for the dependencies. If a bundle has other required bundles, a plus sign would be visible next to the row in the table. Upon pressing on the plus, the dependencies would be shown (with information like "has to be installed", or "has to be updated"). We thought of adding a version dropdown list to choose which one we want to install for a specific bundle. This dropdown list still has to be discussed though, so it may change.

The GUI would also provide some download properties like "download and activate" or just "download" (with a checkbox I suppose).

I will also update the current "Update" button of the plugin management system. How it is going to be upgraded still has to be discussed, but we know for sure we will permit to update more than one plugin at the same time.

Another feature is a search function. I would functionalities to search within one or more repositories.

There still has a lot to be thought of, and that's what I'm for!

TODO List:

  • Check existing plugin management
  • systems for inspiration
  • Think about an updated GUI for the project
  • Continue reading the developer documentation (going very well)
  • Continue reading SIP Communicator source code
  • Continue reading on OSGi and Felix (I assimilated most of the concepts and I'm pretty proud of it :) )

vendredi 25 avril 2008

It's going fast.

I'm actually learning OSGi/Felix faster than I though! I coded the tutorials and I feel pretty comfortable with Felix. After doing those tutorials I tried compiling and running SIP Communicator...Success! I worked on the first (almost try)...I had 2 small problems with it. The first one was an Ant error while running target rebuild:

"Error starting modern compiler"

The problem was that Eclipse was not using the good JRE (Window -> Preferences -> Java -> Installed JREs). My JAVA_HOME variable was set to 1.6, while the JRE was 1.5. I changed the current JRE to 1.6, and it worked.

My second problem was another Ant error. I had to run the -deploy-os-specific-bundles since it was my first time use. Ant wouldn't recognize the target as a valid one (because of the first "-"). I simply replaced the target name with something else, ran the target, and restored the target name...

Not big problems if you ask!

So now I'll concentrate on reading the Developer documentation for SIP Communicator. I browsed the source code and I figured that it would be much easier after reading the documentation available.

TODO List:

  • Read the SIP Communicator developper documentation
  • Continue learning about OSGi/Felix (Especially services)

mercredi 23 avril 2008

Project change!

Wow, this is only the second day after the announcement, and already a big surprise! As mentionned in the title, my project changed. From now on, I'll be working on the following project:

Plugin Repository and advanced plugin management

This change was because two students were chosen for the file transfer project. My mentor proposed me to change project, and I accepted. This new project seems very intersting (and not very different of the previous one, since they both require file transfering). I'll need to create an OSGi bundle repository along with the plugin download / installation functionnalities. I'm really excited to start on this new project. My TODO list will change a bit as you may have guessed :)

TODO list:

  • Get more familiar with OSGi! (More than ever)
  • Learn about OBRs

mardi 22 avril 2008

My first post!

Hello everyone! Let me introduce myself:

I'm Mathieu Plourde. I'm a 20 years old student from the École de technologie supérieure, in Montréal, Québec (Canada). I'm ending my first year (already) in software engineering.

This blog was created for the Google Summer of Code 2008. Do you know what that means? I GOT IN! Woohoo! I'm going to be working (more like having fun) with the SIP Communicator community. My project is to implement file transfer support to other IM clients within SIP Communicator.

IM really excited about this! (Did you see the subtle joke there...not funny I know)

From today, I'll post my weekly/daily progress. Here's my first TODO list!

TODO list:

  • Read about OSGi : I've already learned quite a bit about it, but I don't feel like I know enough, particularly about Apache Felix.

  • Try the different file transfer libraries : I've read about them, checked how they could be used. Now it's time to actually try them and see their potential!