GNU project  -  FREE project  -  Savannah @ GNU Free Software Foundation
The FREE project
home | users | developers | writings | download | connections

On this page

What it does

In this section

Section Index

Internationalisation Team
Test Team

ERServer details
FreeClient details
Free.AWT details
Free.DBPool details
Free.util details
PollManager details
RTServer details
JavaDoc Documentation

developers supported by:
Swing Digital


donate to the project:


Here we will cover what the GNU.FREE Client-end software does and also provide a brief overview of its classes.

What it does

FreeClient provides a graphical interface via AWT to guide a user through the voting process. This starts with a brief explanation of why GNU.FREE is safe to use before the user is authorised, and thus the software communicates with ERServer.

Then the voting screen is presented, the user makes their choice and is asked to confirm before the vote is sent to RTServer and the program ends. The program could be in a batch file to run again once it quits to make it ready for the next voter.

This contains the logic for dealing with the packets sent by servers to the client in repsonse to it's sending a packet. It operates on a) the type of packet, and then b) the data in the packet.

Stores some key constants such as the addresses of servers. It is responsible for building packets and sending them to the correct server while dealing with any error conditions. As a consequence it spins off threads for every communications to keep the rest of the system responsive.


Contains files supporting the AWT GUI.,,

Standard AWT-based frames for leading the user through authentication and introducing them to the GNU.FREE system.

The main class, which must be executed for the program to launch. It creates the splash screen, initialises classes and loads the GUI.

A threaded class for connecting to servers so that the client can then send and receive packets.

An extremely simple thread that is started when starts a communication. It waits a time set by FClient.timeOutTime before cancelling the transmission. If the communication was successful then the thread is stopped before this timeout can occur.

AWT-based frame where the user chooses which option to vote for. They can then watch the progress of their vote before it is confirmed as having been received and they can end their session.

- Dev Home -

Contact - by Jason Kitcat - j-dom portal

© 2000 - 2003 FREE e-democracy project

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.