fi.helsinki.cs.nero.data
Class Person

java.lang.Object
  extended byfi.helsinki.cs.nero.data.Person
All Implemented Interfaces:
java.lang.Comparable

public class Person
extends java.lang.Object
implements java.lang.Comparable

Author:
Johannes Kuusela

Field Summary
private  Contract[] contracts
          Henkilön työsopimukset
private  java.lang.String name
          Henkilön nimi
private  java.lang.String personID
          Henkilön tunnus
private  Reservation[] reservations
          Henkilön huonevaraukset.
private  Session session
           
 
Constructor Summary
Person(Session session, java.lang.String personID, java.lang.String name, Contract[] contracts, Reservation[] reservations)
          Konstruktori.
 
Method Summary
 int compareTo(java.lang.Object o)
           
private  boolean contractBetweenDates(Contract[] contractsForThisPerson, java.util.Date start, java.util.Date end)
          Tutkii onko annettujen päivien välillä henkilöllä voimassaolevia työsopimuksia, joiden aikana henkilö ei ole kokonaan virkavapaalla.
 Contract[] getContracts()
          Palauttaa henkilön työsopimukset sessiossa määrätyllä aikavälillä.
 java.lang.String getName()
          Palauttaa henkilön nimen.
 java.lang.String getPersonID()
          Palauttaa henkilön tunnuksen.
 Reservation[] getReservations()
          Palauttaa henkilön työpistevaraukset sessiossa määrätyllä aikavälillä.
 boolean getStatus()
          Palauttaa true, jos henkil?ll? on ty?sopimusjaksoja, joiden aikana h?nell? ei ole my?s ty?pistevarausta valitulla aikav?lill?.
 java.lang.String toString()
          Palauttaa Person-olion merkkijonoesityksen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

personID

private final java.lang.String personID
Henkilön tunnus


name

private final java.lang.String name
Henkilön nimi


contracts

private Contract[] contracts
Henkilön työsopimukset


reservations

private Reservation[] reservations
Henkilön huonevaraukset.


session

private Session session
Constructor Detail

Person

public Person(Session session,
              java.lang.String personID,
              java.lang.String name,
              Contract[] contracts,
              Reservation[] reservations)
Konstruktori. Saa parametrinaan session johon liittyy, henkilön tunnuksen, henkilön nimen, henkilön työsopimukset ja henkilön työpistevaraukset.

Parameters:
session - Sessio Session oliona.
personID - Henkilölle asetettava tunnus Stringinä.
name - Henkilölle asetettava nimi Stringinä.
contracts - Henkilön sopimukset Contracts[] oliona.
reservations - Henkilön työpistevaraukset Reservations[] oliona.
Throws:
java.lang.IllegalArgumentException - Jos annettu Session tai personID null.
Method Detail

getPersonID

public java.lang.String getPersonID()
Palauttaa henkilön tunnuksen.

Returns:
personID Tunnus Stringinä.

getName

public java.lang.String getName()
Palauttaa henkilön nimen.

Returns:
Nimi Stringinä.

getContracts

public Contract[] getContracts()
Palauttaa henkilön työsopimukset sessiossa määrätyllä aikavälillä.

Returns:
projects Sopimukset Contract[] oliona.

getReservations

public Reservation[] getReservations()
Palauttaa henkilön työpistevaraukset sessiossa määrätyllä aikavälillä.

Returns:
reservations Varaukset Reservation[] oliona.

getStatus

public boolean getStatus()
Palauttaa true, jos henkil?ll? on ty?sopimusjaksoja, joiden aikana h?nell? ei ole my?s ty?pistevarausta valitulla aikav?lill?. Kertoo siis joutuuko henkil? ty?skentelem??n Exactumin vessassa n?ill? n?kymin.

Returns:
hasToWorkInTheToilet kts. muuttujan kuvaava nimi.

contractBetweenDates

private boolean contractBetweenDates(Contract[] contractsForThisPerson,
                                     java.util.Date start,
                                     java.util.Date end)
Tutkii onko annettujen päivien välillä henkilöllä voimassaolevia työsopimuksia, joiden aikana henkilö ei ole kokonaan virkavapaalla. HUOM: päivien välissa oltava vähintään yksi päivä, peräkkäiset päivät = ei tehdä mitään

Parameters:
contractsForThisPerson - Työsopimukset
start - alkupvm
end - loppupvm
Returns:
true tai false

toString

public java.lang.String toString()
Palauttaa Person-olion merkkijonoesityksen

Returns:
merkkijonoesitys, esimerkiksi "Testi Teppo Antero"

compareTo

public int compareTo(java.lang.Object o)
Specified by:
compareTo in interface java.lang.Comparable