Scriptiti
Põhiosa 5p
Tuleb kirjutada käsurea programm, mis on juhitav käsurea parameetrite/võtmete kaudu. Ei ole interaktiivne.
Programm võimaldab kahte asja:
- näitab tudengi kodutööde ja eksami/-te seisu vastavalt kursuse kodulehel publitseeritud andmetele
- kuvab kursuse teateid Google Groups -ist
Käsurealt peab olema võimalik määrata kas programm näitab
- kodutöö/eksami-te punkte või
- kursuse teateid
Juhul kui kasutaja jätab valiku määramata, siis kuvatakse vaikimisi mõlemad.
Google Spreadsheets API
Lähteinfo saab kätte kursuse jaoks juba kohandatud Google Spreadsheets API kaudu aadressilt: https://spreadsheets.google.com/feeds/list/0AnoMCh3_x82sdHhjaG1NZG1uOXVSZWJBblVzbDRDb2c/od7/public/basic
Väljastamisel peab programm iga tudengi kirje ette kuvama lähteinfos sisalduva unikaalse identifikaatori (UID) - näiteks efsh8.
Ning võimaldab UID käsurealt ka määrata. Juhul kui UID on määratud, siis lisab selle lähteinfo päringu koos kaldkriipsuga. Näiteks: /efsh8. Sellisel juhul oleks lõplik lähteinfo URL: https://spreadsheets.google.com/feeds/list/0AnoMCh3_x82sdHhjaG1NZG1uOXVSZWJBblVzbDRDb2c/od7/public/basic/efsh8
Lähteinfo struktuurist
Soovitav päringu vastust tavalise tekstiredaktoriga veidi uurida. Siiski üks märkus siia juurde. <content> sees olev vastus on formaadis: <tulbanimi>: <väärtus>,
Juhul kui tulbal väärtust ei ole - siis ei ole vastuses ka tulba nimetust.
<entry> <id>https://spreadsheets.google.com/feeds/list/0AnoMCh3_x82sdHhjaG1NZG1uOXVSZWJBblVzbDRDb2c/od7/public/basic/cztg3</id> <updated>2011-09-12T11:57:23.076Z</updated> <category scheme='http://schemas.google.com/spreadsheets/2006' term='http://schemas.google.com/spreadsheets/2006#list'/> <title type='text'>050660IABB</title> <content type='text'>yachtzee: 10, tweet: 10, sportinfo: 10, eksamiaeg: 10:00:00, hinne: 4</content> <link rel='self' type='application/atom+xml' href='https://spreadsheets.google.com/feeds/list/0AnoMCh3_x82sdHhjaG1NZG1uOXVSZWJBblVzbDRDb2c/od7/public/basic/cztg3'/> </entry>
Piisab kui kuvada väljundisse see, mis olemas on - juurde pole vaja midagi "tekitada". Näiteks:
yachtzee 10 tweet 10 sportinfo 10 eksamiaeg 10:00:00 hinne 4
Google Groups RSS/ATOM
Kursuse teadete RSS "feed" URL: http://groups.google.com/group/iti0011/feed/rss_v2_0_msgs.xml
Programm töötleb RSS-i vastuse ja kuvab näiteks kujul:
teisipäevane praktikum, nüüd kolmapäeval kl 8 ------------------------------------ teisipäevane praktikum, nüüd kolmapäeval kl 8 vaata tunni plaani ois.ttu.ee * * * * ITI0011 sügisel 2011 ------------------------------------ ITI0011 algab loenguga neljapäeval 1.sept, kl. 10:00 ruumis VI-229 Esimene praktikum pärast loengut, teisipäeval 6.sept vastavalt tunniplaanile
Lisaosa 2p
Programm võimaldab käsurealt määrata filtri (string), mis peab sisalduma tudengi matriklis. Vastavalt filtrile kuvab tulemusena vaid tudengite tulemused, kelle matriklis filtris määratud väärtus sisaldub. Nii on võimalik esmast otsingut piirata ning välja otsida Põhiosas mainitud unikaalne identifikaator - UID, millega käsurealt tudengit täpselt määrata.
Juhul kui ühtegi kirjet ei leitud, väljastab programm vastava teate.
Lisaosa 3p
Programm puhverdab päringute vastused kõvakettale. Juhul kui puudub Internetiühendus, loeb vastuse puhvrist ja teatab kasutajale näiteks "Internetiühendus puudub, loen puhvrist"