Špecifikácia - matragorn/PV138_RSS_reader GitHub Wiki
FEED
Trieda Feed (implementuje IFeed) je reprezentáciou jedného kanálu
Atribúty:
- Title Názov kanálu
- FeedURL Adresa URL kanálu
- MainPageLink Adresa na hlavnú stránku kanálu
- Description Popis kanálu
ARTICLE
Trieda Article (implementuje IArticle) je reprezentáciou jedného článku
Atribúty:
- Title Názov článku
- URL Adresa URL článku
- Description Popis článku
- PubDate Dátum publikovania článku
- ParentFeed Kanál, ktorému článok patrí
- Read Článok má stav prečítaný/neprečítaný(východzie)
- Starred Článok má stav obľúbený/nenastavené(východzie)
CATEGORY
Trieda Category je implementáciou užívateľom spravovaných kategórií
Atribúty:
- ID Identifikátor, hodnota null pokiaľ nie je kategória uložená
- Name Názov kategórie
- Feeds Zoznam kanálov v kategótií
FEED MANAGER
Trieda FeedManager zapúzdruje hlavnú logiku programu. Vytvorenie inštancie triedy s konkrétnym úložiskom. Poskytuje funkcionalitu pre prihlásenie nového odberu, zrušenie odberu. Dostupné sú metódy pre aktualizáciu jedného/všetkých kanálov. Je implementovaná funkcionalita pre jednotlivé články. Nastavenie článku hodnotu prečítané/neprečítané obľúbené/nenastavené a metódy pre návrat všetkých obľúbených, neprečítaných článkov, alebo článkov patriacemu jednému konkrétnemu odberu. V tejto triede sú metódy pre správu kategórií, a pre pridanie kanálu do nejakej z nich.
Atribúty:
- Feeds Zoznam všetkých prihlásených kanálov.
FEED READER
Trieda FeedReader má za úlohu spracovať XML dokument vhodným parsrom (RssParser/AtomParser). Metódy na vytvorenie kanálu (Feed) podľa zadanej URL adresy a získanie článkov z konkrétneho kanálu.
Atribúty:
- Parsers Zoznam všetkých parsrov, nastavené v konštruktore.
IPARSER
Triedy RssParser a AtomParser (implementujú IParser) sú triedami pre validáciu (XSD) XML dokumentu, ktorý reprezentuje jeden kanál. Zahŕňajú metódy pre vytvorenie objektu Feed a pre získanie článkov z daného feedu.