Š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.