jeroen.film
Class FilmDb

java.lang.Object
  |
  +--jeroen.film.FilmDb
All Implemented Interfaces:
StatusBroadcaster

public class FilmDb
extends Object
implements StatusBroadcaster

Deze klasse representeert een database met filmV. De interface is vrij simpel, het belangrijkste zijn de methodes #getAantal() en getFilm(int) bij het gebruiken van de database. Deze database extends AbstractList, omdat je, na het definieren van 3 methodes dan alle methodes van Collections (zoals binary search, sort, enz) hierop kunt toepassen. Op die manier is een snelle title-search mogelijk mbv Collections.binarySearch, terwijl er nog geen enkele titel in het geheugen staat.


Field Summary
static FilmDb current
          Huidige database.
 
Constructor Summary
FilmDb()
          Een nieuwe, lege filmdatabase
FilmDb(File bestand)
          De filmdatabase uit het opgegeven bestand
 
Method Summary
 List getDb()
           
 Film getFilm(int index)
           
 Film getFilm(String titel, int jaar)
          Deze methode doet z'n uiterste best om de gevraagde film te leveren.
 Film getLastQuery()
           
 int getMaxProgress()
          Een StatusBroadcaster methode
 int getProgress()
          Een StatusBroadcaster methode
 String getStatusString()
          Geef de status van de database weer als een String.
 List getTvDb()
           
 boolean isActief()
          Een StatusBroadcaster methode
 Iterator iterator()
           
 void parse(File bestand)
          Parse een imdb-bestand in deze database.
 void parseVeronica()
          Parse alle tv-gegevens van de site van veronica.
 int size()
           
 void slaOp(File bestand)
           
 Iterator veronicaFilmIterator()
          Geef een iteratie over de tv-films die ook in de IMDB voorkomen.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

current

public static FilmDb current
Huidige database.
Constructor Detail

FilmDb

public FilmDb()
       throws IOException
Een nieuwe, lege filmdatabase

FilmDb

public FilmDb(File bestand)
       throws IOException
De filmdatabase uit het opgegeven bestand
Method Detail

parse

public void parse(File bestand)
           throws IOException,
                  InterruptedException
Parse een imdb-bestand in deze database.

parseVeronica

public void parseVeronica()
                   throws IOException,
                          InterruptedException
Parse alle tv-gegevens van de site van veronica.

veronicaFilmIterator

public Iterator veronicaFilmIterator()
Geef een iteratie over de tv-films die ook in de IMDB voorkomen.

getStatusString

public String getStatusString()
Geef de status van de database weer als een String. Voor gebruik in een StatusBalk.
Specified by:
getStatusString in interface StatusBroadcaster
See Also:
IndexingPanel.StatusBalk

getProgress

public int getProgress()
Description copied from interface: StatusBroadcaster
Een StatusBroadcaster methode
Specified by:
getProgress in interface StatusBroadcaster

getMaxProgress

public int getMaxProgress()
Description copied from interface: StatusBroadcaster
Een StatusBroadcaster methode
Specified by:
getMaxProgress in interface StatusBroadcaster

isActief

public boolean isActief()
Description copied from interface: StatusBroadcaster
Een StatusBroadcaster methode
Specified by:
isActief in interface StatusBroadcaster

getLastQuery

public Film getLastQuery()

size

public int size()

iterator

public Iterator iterator()

getDb

public List getDb()

getTvDb

public List getTvDb()

getFilm

public Film getFilm(String titel,
                    int jaar)
Deze methode doet z'n uiterste best om de gevraagde film te leveren. Bij meerdere mogelijkheden wordt een willekeurige film gegeven, als de film niet gevonden kan worden, wordt null teruggegeven.

getFilm

public Film getFilm(int index)

slaOp

public void slaOp(File bestand)