meta data for this page
Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
vaadin2009:grp1:start [2009/10/20 11:55] jurkkola |
vaadin2009:grp1:start [2009/10/28 16:27] (current) hevi |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Group 1: (Avis) ====== | ====== Group 1: (Avis) ====== | ||
+ | ^ Name 1 ^ Name 2 ^ Name 3 ^ | ||
+ | | Kokko Joona-Pekka | Myllys Ville | Jurkkola Ville | | ||
====== Idea ====== | ====== Idea ====== | ||
Line 7: | Line 9: | ||
The fundamental idea of Avis is to visualize Finnish emergency information using Google Maps and Vaadin, thus providing user with geographical incident information. Furthermore, | The fundamental idea of Avis is to visualize Finnish emergency information using Google Maps and Vaadin, thus providing user with geographical incident information. Furthermore, | ||
- | ====== | + | ====== |
Priority scale: 1 = Most Critical .. 3 = Least Critical | Priority scale: 1 = Most Critical .. 3 = Least Critical | ||
Line 23: | Line 25: | ||
|Allow user to control the amount of displayed incidents.| | |Allow user to control the amount of displayed incidents.| | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Implemented services ====== | ||
+ | |||
+ | |||
+ | User can manually refresh the map to reflect the latest incident data | ||
+ | User can add incident data to map by clicking an incident link in the sidepanel | ||
+ | User can zoom into accident locations by clicking an incident link in the sidepanel | ||
+ | User can zoom out the map by clicking a button | ||
+ | User can clear the incidents icons from the map by clicking a button | ||
+ | User sees a notification when the map is refreshed | ||
+ | User sees a notification when an incident with no location is clicked | ||
+ | User sees an incident info window by clicking an incident icon | ||
+ | User sees an incident tooltip by hovering mouse over an incident (icon or link) | ||
+ | User sees a notification in case of an error | ||
+ | User sees the amount of listed incidents in topbar | ||
+ | Display the last 10 incidents on the map according to incident locations | ||
+ | Incidents are differentiated by icons that matched the incident type | ||
+ | |||
+ | |||
+ | ====== Screenshots ====== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | '' | ||
+ | (2. Zoomed in view of an incident)'' | ||
+ | |||
+ | |||
+ | {{: | ||
+ | |||
+ | '' | ||
+ | (4. Error view if a critical component fails loading). | ||
+ | '' | ||
+ | |||
+ | ====== Implementation ====== | ||
+ | |||
+ | | ||
+ | |||
+ | Three fundamental components: RSS reader, parser class and Google Maps widget | ||
+ | |||
+ | Avis application itself implements transaction listener to keep track of | ||
+ | application context in thread level. | ||
+ | |||
+ | Parser uses simple regexp grouping to find locations and events from feed data | ||
+ | |||
+ | Google Maps widget is wrapped by Vaadin widget. We extended the widget as | ||
+ | described below (see Used components / widgets) | ||
+ | |||
+ | ====== Used components ====== | ||
+ | |||
+ | |||
+ | **Vaadin components: | ||
+ | Multiple layout components (Horizontal layout, Vertical layout, Split panel etc) | ||
+ | Notifications (Humanized and Error) | ||
+ | Table | ||
+ | Buttons (with themed images) | ||
+ | Labels (with XHTML formatting) | ||
+ | |||
+ | **Widgets: | ||
+ | Vaadin GWT Google Maps wrapper widget | ||
+ | Extended (by us): | ||
+ | GeoCoding (HTTP request/ | ||
+ | Overloaded Marker constructor to support address | ||
+ | Marker randomization to avoid overlapping markers | ||
+ | |||
+ | **Other things:** | ||
+ | Custom theme (Avistheme) with icons, images and CSS | ||
+ | |||
+ | ====== Vaadin ====== | ||
+ | |||
+ | |||
+ | **Impressive things in Vaadin:** | ||
+ | Flexibility | ||
+ | Extendability | ||
+ | User support | ||
+ | |||
+ | **Encountered problems:** | ||
+ | Initial problems with usage of embedded resources | ||
====== Software ====== | ====== Software ====== | ||
- | (files and instructions to run software) | + | {{: |