A beadandókat a küldjétek el e-mailben is, egyetlen ZIP fájlként mellékelve. A levél fejléce a következőképp nézzen ki:
csop<csoportszám>_<EHA kód>_bead2
Példa:
csop1_LERIAAT_bead2
Készítsünk egy egyszerű alkalmazást, ami publikusan elérhető Twitter adatokat dolgoz fel!
A program tartalmaz egy kliens és egy szerveralkalmazást.
A kliens utasításokat küld a szervernek, ami végrehajtja azokat.
A szerver egy egyszerű, egyszálas szerveralkalmazás, amelyhez egy adatbázis is tartozik.
A programot objektumorientált paradigmáknak megfelelően készítsd el! Absztrahálj, készíts megfelelő adatelérési réteget, hozzá tartozó megfelelő osztályokkal!
A kliens induláskor csatlakozik egy szerverhez a megadott portra. Ezután egy ciklusban továbbítja a konzolról beolvasott üzeneteket a szervernek, ami végrehajtja azokat.
exit
, a kliens fejezze be a működését.script fileName.sc
formátumú, akkor a kliens olvassa be az adott
script tartalmát, majd egyesével továbbítsa azokat végrehajtásra a szervernek.A szerver induláskor figyeljen a megadott porton egy kliens kapcsolódására.
Amennyiben a szervert a -init
kapcsolóval indítják, inicializálja az
adatbázist (hozza létre a szükséges táblákat, esetleg töltse fel minimális
tesztadatokkal, stb.).
A klienstől érkező üzenetek közül a következőkre szükséges figyelni:
exit
A szerveralkalmazás fejezze be a működést.uname [, uname]*
(azaz felhasználónév, vagy felhasználónevek vesszővel
elválasztott listája) A szerver töltse le a felhasználó(k)hoz tartalmazó
legfrissebb tweeteket (ennek módja az alábbiakban részletesen megtalálható),
és tárolja el azokat a használt adatbázisban.stats
A tárolt adatokból statisztikák készítése, és prezentálása egy
egyszerű HTML fájlban.Az adatbázisban a következő adatok tárolandók el:
140
karakter lehet).A Twitter közetkező, régebbi, publikus REST API-ja alapján lekérdezhető egy XML
formátumú fájlban egy adott felhasználóhoz tartozó legfrissebb üzenetek a user_id
alapján:
http://twitter.com/statuses/user_timeline.xml?id=<user id>
Példa URL:
http://twitter.com/statuses/user_timeline.xml?id=legendi_ELTE
A felhasználóhoz tartozó kép URL címe a következő sor alapján találahtó meg:
<profile_image_url>...</profile_image_url>
Illetve a felhasználó által írt tweetek a következő sorok alapján találahtók meg:
<text>...</text>
A szerver legyen képes egy egyszerű HTML fájl előállítására, amely minimális statisztikákat tartalmaz az adatbázisban tárolt adatokról.
Ez legyen egy táblázat, amely tartalmazza minden felhasználóhoz a képét, nevét, valamint az általa írt összes bejegyzés hosszának összegét.
80
).localhost
).index.html
.Az alábbiakban néhány példát láthattok a bemeneti és kimeneti fájlokra.
joshbloch,norvig
Kurt_Vonnegut
stats
exit
<html>
<body>
<table border='1'>
<tr>
<th>Picture</th>
<th>Id</th>
<th>Char Count</th>
</tr>
<tr>
<td><img src='http://a0.twimg.com/profile_images/2111886999/TWITTER_PROFILE_PIC_normal.jpg'/></td>
<td>FamilyGuyonFOX</td>
<td>2027</td>
</tr>
<tr>
<td><img src='http://a0.twimg.com/sticky/default_profile_images/default_profile_5_normal.png'/></td>
<td>norvig</td>
<td>106</td>
</tr>
</table>
</body>
</html>
Picture | Id | Char Count |
---|---|---|
FamilyGuyonFOX | 2027 | |
norvig | 106 |