POLLMANAGER
Here we will cover what the GNU.FREE Polling-station client software does and also provide a brief overview of its classes.
|
| What it does |
PollManager provides a graphical interface via AWT to guide a user through authorising a voter and registering them as having voted. The software communicates with ERServer to ensure voters are valid and haven't voted online previously.
|
| Comms.java |
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.
|
| DetailFrame.java, EnterFrame.java, StatusFrame.java |
Standard AWT-based frames for leading the user through authentication and showing details on comms progress and the voter.
|
| freeawt.jar |
Contains files supporting the AWT GUI.
|
| PollManager.java |
The main class, which must be executed for the program to launch. It creates the splash screen, initialises classes and loads the GUI.
|
| PMProtocol.java |
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.
|
| TCPClient.java |
A threaded class for connecting to servers so that the client can then send and receive packets.
|
| TimeOutThread.java |
An extremely simple thread that is started when Comms.java starts a communication. It waits a time set by PollManager.timeOutTime before cancelling the transmission. If the communication was successful then the thread is stopped before this timeout can occur.
- Dev Home -
|