Parkinson Disease Database

spirals.motol.database
Class Database

java.lang.Object
  extended by spirals.motol.database.Database

public class Database
extends java.lang.Object

Root class for storing database.

Each time database is exported all pacients are stored in random order without surname and firstname. No corespondence between database and exported data should be found.

Database contains Pacients. Pacients have Visits and Visits consist of Data. Database is stored in directory 'data' containing root file and direcotries of pacients. Only root file is loaded on application startup. Each pacient directory contains xml files representing visits and zip archives with captured tablet data for visits.

Copyright: Copyright (c) 2005 Jan Dolezel

Company: ČVUT FEL, Prague

See Also:
TabletData, Data, Pacient, Visit

Nested Class Summary
static class Database.SORT
           
 
Field Summary
private  java.util.HashMap<java.lang.Long,Pacient> database
          hash tabulka pacientů jednoznačně identifikovaných rodným číslem
private  Engine engine
          rozcestník po třídách
private  Database.SORT howSort
          způsob řazení pacientů
private  java.util.Date lastBackup
          datum pslední zálohy databáze
private  java.util.List<Pacient> listAll
          seznam všech pacientů
private  java.util.List<Pacient> listRestricted
          seznam vybraných pacientů z vyhledávání
private  DatabaseLoader loader
          třída pro nahrání databáze
private  boolean restricted
          používat seznam vyhledávání
 
Constructor Summary
Database(DatabaseLoader loader)
           
Database(Engine engine)
           
Database(Engine engine, DatabaseLoader loader)
           
 
Method Summary
 void addPacient(Pacient pacient)
          přidej pacienta, pokud není v databázi
 void backuped()
          volá se, hned po zálohování
 void clearRestricted()
          smaž seznam vyhledaných pacientů
 boolean contains(java.lang.String ID)
           
 void export(DatabaseLoader exporter)
           
 java.util.List<Pacient> getAll()
           
 long getDatabaseSize()
           
 Engine getEngine()
           
 java.util.Date getLastBackup()
           
 DatabaseLoader getLoader()
           
 Pacient getPacient(java.lang.Long ID)
           
 long getPacientCount()
           
 java.util.List<Pacient> getRestricted()
           
 int getTreeCount()
          počet zobrazovaných pacientů
 int getTreeIndex(Pacient pacient)
          vrat pozici pacienta v zobrazovaném stromě
 Pacient getTreePacient(int index)
          vrat pacienta na dané pozici v zobrazovaném stromě
 void importData(DatabaseLoader importer)
           
 void replace(java.lang.String oldID, java.lang.String newID)
           
 void save()
           
 void setLastBackup(java.util.Date date)
           
 void setRestricted(boolean restricted)
           
 void setRestrictedBorn(java.util.Date dateBegin, java.util.Date dateEnd)
          přidej do seznamu vyhledávání pacienty s datem narození mezi zadanými daty
 void setRestrictedID(java.lang.String ID)
          Přidej do seznamu vyhledávání pacienta s daným ID
 void setRestrictedName(java.lang.String nameBegin, java.lang.String nameEnd)
          přidej do seznamu vyhledávání pacienty s příjmením v daném rozsahu
 void setRestrictedVisit(java.util.Date dateBegin, java.util.Date dateEnd)
          přidej do seznamu vyhledávání pacienty s návštěvou mezi zadanými daty
 void setSize(int size)
          pokud ještě není databáze inicializovaná, vyhradí pro ni prostor
 void sort()
           
private  void sort(java.util.Comparator c)
           
 void sort(Database.SORT how)
          seraď podle kritéria
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

engine

private Engine engine
rozcestník po třídách


loader

private DatabaseLoader loader
třída pro nahrání databáze


database

private java.util.HashMap<java.lang.Long,Pacient> database
hash tabulka pacientů jednoznačně identifikovaných rodným číslem


listAll

private java.util.List<Pacient> listAll
seznam všech pacientů


listRestricted

private java.util.List<Pacient> listRestricted
seznam vybraných pacientů z vyhledávání


restricted

private boolean restricted
používat seznam vyhledávání


howSort

private Database.SORT howSort
způsob řazení pacientů


lastBackup

private java.util.Date lastBackup
datum pslední zálohy databáze

Constructor Detail

Database

public Database(DatabaseLoader loader)

Database

public Database(Engine engine)

Database

public Database(Engine engine,
                DatabaseLoader loader)
Method Detail

save

public void save()

getAll

public java.util.List<Pacient> getAll()

getRestricted

public java.util.List<Pacient> getRestricted()

clearRestricted

public void clearRestricted()
smaž seznam vyhledaných pacientů


setRestrictedVisit

public void setRestrictedVisit(java.util.Date dateBegin,
                               java.util.Date dateEnd)
přidej do seznamu vyhledávání pacienty s návštěvou mezi zadanými daty

Parameters:
dateBegin - Date
dateEnd - Date

setRestrictedBorn

public void setRestrictedBorn(java.util.Date dateBegin,
                              java.util.Date dateEnd)
přidej do seznamu vyhledávání pacienty s datem narození mezi zadanými daty

Parameters:
dateBegin - Date
dateEnd - Date

setRestrictedName

public void setRestrictedName(java.lang.String nameBegin,
                              java.lang.String nameEnd)
přidej do seznamu vyhledávání pacienty s příjmením v daném rozsahu

Parameters:
nameBegin - String
nameEnd - String

setRestrictedID

public void setRestrictedID(java.lang.String ID)
Přidej do seznamu vyhledávání pacienta s daným ID

Parameters:
ID - String

setRestricted

public void setRestricted(boolean restricted)

getTreeCount

public int getTreeCount()
počet zobrazovaných pacientů

Returns:
int

getTreePacient

public Pacient getTreePacient(int index)
vrat pacienta na dané pozici v zobrazovaném stromě

Parameters:
index - int
Returns:
Pacient

getTreeIndex

public int getTreeIndex(Pacient pacient)
vrat pozici pacienta v zobrazovaném stromě

Parameters:
pacient - Pacient
Returns:
int

sort

public void sort()

sort

public void sort(Database.SORT how)
seraď podle kritéria

Parameters:
how - SORT

sort

private void sort(java.util.Comparator c)

addPacient

public void addPacient(Pacient pacient)
přidej pacienta, pokud není v databázi

Parameters:
pacient - Pacient

getPacientCount

public long getPacientCount()

getPacient

public Pacient getPacient(java.lang.Long ID)

getLastBackup

public java.util.Date getLastBackup()

getEngine

public Engine getEngine()

getLoader

public DatabaseLoader getLoader()

backuped

public void backuped()
volá se, hned po zálohování


setLastBackup

public void setLastBackup(java.util.Date date)

setSize

public void setSize(int size)
pokud ještě není databáze inicializovaná, vyhradí pro ni prostor

Parameters:
size - int

export

public void export(DatabaseLoader exporter)

importData

public void importData(DatabaseLoader importer)

getDatabaseSize

public long getDatabaseSize()

contains

public boolean contains(java.lang.String ID)

replace

public void replace(java.lang.String oldID,
                    java.lang.String newID)

Parkinson Disease Database