29.07.2013 Views

Master of Science thesis Fighting Spam

Master of Science thesis Fighting Spam

Master of Science thesis Fighting Spam

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Figur 35<br />

Klassediagram for serverpakken hvor de tre klasser og fire pakker kan ses.<br />

I AbstractServer-klassen er placeret en shutdown-metode, som benytter Java s<br />

ShutdownHook-klasse. Dette giver mulighed for at eksekvere kode, når<br />

serverapplikationerne lukkes ned, hvad enten dette sker korrekt eller på den hårde måde<br />

(f.eks. med Ctrl+C). Dette udnyttes af de servere, som har behov for at gemme data til<br />

næste opstart. Dette gælder blacklistserveren, som skal gemme blacklisten, og CES, som<br />

bl.a. skal gemme kunders kontooplysninger og saldo.<br />

7.3.6 GUI<br />

Serverne i systemet er konsolbaserede, hvorfor der ikke benyttes en GUI (Graphical User<br />

Interface) her. I klienten findes en GUI til at interagere med brugeren af applikationen. I<br />

GUI en findes udelukkende grafisk funktionalitet. Dette skyldes, at klientprogrammet<br />

grundlæggende er opbygget efter Model-View-Control princippet. At det grafiske dermed<br />

er fuldstændig adskilt fra resten af programmet, gør det muligt at teste denne del uden at<br />

involvere andre komponenter. Derudover skabes et bedre overblik over funktionaliteten.<br />

GUI en er opbygget omkring to hovedvinduer, RegistrationFrame og MainFrame, der hhv.<br />

vises ved registrering og når programmet benyttes efter registrering. Herunder ses en liste<br />

med klasserne, der udgør GUI en i <strong>Spam</strong>Cash. I vinduet MainFrame findes et faneblad for<br />

hver hovedfunktion. Disse er indrykket og vist under MainFrame i nedenstående opstilling:<br />

117

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!