timetable.data
Class ActivityGroup

java.lang.Object
  |
  +--timetable.data.ActivityGroup
All Implemented Interfaces:
java.io.Serializable

public class ActivityGroup
extends java.lang.Object
implements java.io.Serializable

Reprezntace skupiny aktivit v rozvrhovacím problému. Tato třída také umožňuje dynamické přidávání a odebírání activit.

See Also:
Activity, Serialized Form

Field Summary
protected  java.util.Vector activities
          Množina aktivit, reprezentovaná pomocí třídy java.util.Vector
 boolean changed
          Příznak určující změnu
 
Constructor Summary
ActivityGroup()
          Konstruktor.
ActivityGroup(Activity activity)
          Konstruktor.
ActivityGroup(Activity[] activity)
          Konstruktor.
 
Method Summary
 void add(Activity activity)
          Přidání activity do seznamu.
 void addIfIsNot(Activity activity)
          Přidání aktivity do seznamu, pokud tato activita ještě v seznamu není.
 void addIfIsNot(ActivityGroup activities)
          Přidání aktivit do seznamu, pokud tyto activity ještě v seznamu nejsou.
 java.lang.Object clone()
          Vrátí jinou instanci této třídy obsahující stejnou skupinu aktivit.
 int containsResource(Resource resource)
          Zjištuje, zda-li některá z aktivit vyžaduje příslušný zdroj.
 int containsResources(ResourceGroup resources)
          Zjišťuje, zda-li některá z aktivity vyžaduje skupinu zdrojů.
 Activity get(int i)
          Vrátí aktivitu s pořadovým číslem i.
 int indexOf(Activity activity)
          Vrátí index aktivity.
 boolean isChanged()
          Změnila se množina aktivit?
protected static ActivityGroup read(java.io.ObjectInputStream in, Config config, ResourceGroup allResources)
          Přečtení seznamu aktivit ze streamu.
 void remove(Activity activity)
          Odebrání aktivity ye seznamu.
 void removeAll()
          Odebrání všech aktivit ze seznamu.
 int size()
          Získání počtu aktivit v seznamu
 java.lang.String toString()
          Vrátí řetězec, čárkami oddělený seznam jmen aktivit.
protected  void write(java.io.ObjectOutputStream out, ResourceGroup allResources)
          Zápis seznamu aktivit do streamu.
 
Methods inherited from class java.lang.Object
, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

activities

protected java.util.Vector activities
Množina aktivit, reprezentovaná pomocí třídy java.util.Vector

changed

public boolean changed
Příznak určující změnu
Constructor Detail

ActivityGroup

public ActivityGroup()
Konstruktor.

ActivityGroup

public ActivityGroup(Activity activity)
Konstruktor.
Parameters:
activity - po vytvoření třídy vloží activitu activity

ActivityGroup

public ActivityGroup(Activity[] activity)
Konstruktor.
Parameters:
activity - po vytvoření třídy vloží pole activit activity
Method Detail

add

public void add(Activity activity)
Přidání activity do seznamu.
Parameters:
activity - přidávaná activita

isChanged

public boolean isChanged()
Změnila se množina aktivit?
Returns:
true pokud ano

addIfIsNot

public void addIfIsNot(Activity activity)
Přidání aktivity do seznamu, pokud tato activita ještě v seznamu není.
Parameters:
activity - přidávaná activita

addIfIsNot

public void addIfIsNot(ActivityGroup activities)
Přidání aktivit do seznamu, pokud tyto activity ještě v seznamu nejsou.
Parameters:
activities - seznam přidávaných activit

remove

public void remove(Activity activity)
Odebrání aktivity ye seznamu.
Parameters:
activity - odebíraná aktivita

removeAll

public void removeAll()
Odebrání všech aktivit ze seznamu.

size

public int size()
Získání počtu aktivit v seznamu
Returns:
počet aktivit v seznamu

get

public Activity get(int i)
Vrátí aktivitu s pořadovým číslem i. (Čísla jdou od 0 do size()-1).
Parameters:
i - pořadové číslo aktivity
Returns:
daná aktivita

indexOf

public int indexOf(Activity activity)
Vrátí index aktivity.
Parameters:
actitivy - hledaná aktivita
Returns:
index aktivity v seznamu, -1 pokud tam není.

clone

public java.lang.Object clone()
Vrátí jinou instanci této třídy obsahující stejnou skupinu aktivit.
Overrides:
clone in class java.lang.Object
Returns:
jiná skupina stejných aktivit

containsResource

public int containsResource(Resource resource)
Zjištuje, zda-li některá z aktivit vyžaduje příslušný zdroj.
Parameters:
resource - zdroj
Returns:
index první aktivity, která zdroj vyžaduje. -1 pokud taková aktivita neexistuje.

containsResources

public int containsResources(ResourceGroup resources)
Zjišťuje, zda-li některá z aktivity vyžaduje skupinu zdrojů.
Parameters:
resource - skupina zdrojů
Returns:
index první aktivity, která danou skupinu vyžaduje. -1 pokud taková aktivita neexistuje.

toString

public java.lang.String toString()
Vrátí řetězec, čárkami oddělený seznam jmen aktivit.
Overrides:
toString in class java.lang.Object
Returns:
seznam jmen aktivit

write

protected void write(java.io.ObjectOutputStream out,
                     ResourceGroup allResources)
              throws java.io.IOException
Zápis seznamu aktivit do streamu. Volá metodu Activity.write pro zápis aktivity. Maže přízank změny changed.
Parameters:
out - stream
allResources - množina všech zdrojů

read

protected static ActivityGroup read(java.io.ObjectInputStream in,
                                    Config config,
                                    ResourceGroup allResources)
                             throws java.io.IOException,
                                    java.lang.ClassNotFoundException,
                                    TimetableException
Přečtení seznamu aktivit ze streamu. Volá metodu Activity.read pro čtení aktivity.
Parameters:
in - stream
config - globální konfigurace
allResources - množina všech zdrojů
Returns:
přečtený seznam aktivit