ace-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marcel Offermans <>
Subject Towards a brand new web UI...
Date Fri, 03 Jul 2009 22:46:03 GMT
When we donated the sources, we did not donate the UI part of the  
client, so the first thing we should probably do now is create a new  
UI. Past experiences have indicated most people would like to use a  
web based UI. Since the original client used the MVC pattern (it was  
Swing based) I think GWT is a logical choice.

This afternoon I added some tasks to JIRA to build a basic version  
which is modeled loosely after the old Swing client. I will try to  
explain the Ui and related tasks in a bit more detail.

Let's start with the basic operation of the client. A client session  
starts by "checking out" a version of the repositories containing the  
metadata about components, groups, features and targets. You can then  
manipulate the repository locally and finally commit it or revert the  
local changes.

The UI consist of 4 columns, ordered from left to right, and you can  
add items to each column and associate items in different columns with  
each other by using drag and drop.

The idea is to build this UI step by step. The client side logic is  
already in place (allowing you to perform all operations explained  
above through OSGi services).

ACE-23 and 24 are about including a GWT application in the build, and  
deploying it in OSGi using the PAX bundles.

ACE-25 then builds the 4 empty columns of the UI and hooks up the  
right most column containing the targets. A target is an OSGi  
framework and each target should somehow be uniquely identifyable  
(which is a service that can be implemented in the management agent).  
When this task is done, you should be able to launch the web UI and  
see targets showing up when they are launched and succesfully talking  
to the server.

ACE-26 Then adds the ability to add groups and features and have them  
show up in the middle two columns.

ACE-27 Is about adding components (bundles or other supported  
datatypes) to the left most column, uploading them to an OBR too.

ACE-28 then adds the ability to create associations between the  
elements in the columns, using drag and drop, with ACE-30 visualizing  
those associations by means of highlighting related items in adjacent  
columns when you select something in a column.

ACE-29 then adds features to get, commit and revert repositories,  
which is the point where the system actually starts becoming useable.

ACE-31 then adds the ability to remove associations and objects.

All these issues together should give us a basic client to work with.  
I intend to start working on this from now on, but if anybody wants to  
try and help out, feel free to do so. Especially if you have  
experience with the PAX tools or even GWT! I'm sure some of these  
tasks are a bit too much for those with no prior history of working on  
this codebase, but we're here to help! :)

Also, if you have any comments or suggestions, let me know!

Greetings, Marcel

View raw message