|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectAbstractObjectTraceable
edu.bonn.xulu.appl.DataPool
public class DataPool
Diese Klasse stellt den Xulu-Datenpool dar, in dem saemtliche (globalen)
Daten fuer die Modellierung verwaltet werden.
Die Objekte werden in einer Hashtable
verwaltet und sind
durch eine eindeutige ID ansprechbar.
Nested Class Summary | |
---|---|
static class |
DataPool.DataPoolChangeEvent
Diese Ereignis wird erzeugt (und an alle schmitzm.data.event.ObjectListener
gesendet), wenn sich der Inhalt des Datenpools aendert (ein Objekt hingefuegt
oder entfernt wurde). |
Field Summary |
---|
Fields inherited from interface edu.bonn.xulu.appl.XuluConstants |
---|
BUG_MAIL_ADDR, EXTENTION_BUNDLE, ICONS_DIR, LOCALES_BASE, RESOURCE_DIR, SWING_RES, VERSION, VERSION_DATE, XULU_ICON, XULU_INFOICON, XULU_STARTICON, XULU_VIS_RES, XULUERR_RES, XULUGUI_RES |
Constructor Summary | |
---|---|
DataPool()
Erzeugt einen neuen Datenpool. |
|
DataPool(int cap)
Erzeugt eine neue Datenpool-Instanz. |
Method Summary | |
---|---|
void |
addObject(XuluObject object)
Fuegt dem Datenpool ein Objekt hinzu. |
Enumeration |
asEnumeration()
Liefert den Inhalt des Datenpools als Liste. |
boolean |
contains(long id)
Prueft, ob im Pool ein Objekt vorhanden ist. |
boolean |
contains(String name)
Prueft, ob im Pool ein Objekt vorhanden ist. |
String |
createUniqueDescription(String baseName)
Erstellt eine fuer den Datenpool eindeutige Bezeichnung. |
void |
dispose()
Zerstoert den Datenpool und alle darin enthaltenen Objekte. |
static long |
generateUniqueID()
Generiert eine Objekt-ID, die (ueber alle DataPool -Instanzen!) |
boolean |
getAutoOverwrideDuplicateNames()
Prueft, ob beim Einfuegen eines neuen Objekte bestehende Objekte mit dem gleichen Namen automatisch aus dem Datenpool entfernt werden ( true ),
oder die Einfuege-Operation zurueckgewiesen wird (false ). |
boolean |
getDuplicateNamesAllowed()
Prueft, ob sich mehrere Objekte mit demselben Namen im Datenpool befinden duerfen. |
XuluObject |
getObject(long id)
Liefert ein Objekt aus dem Datenpool. |
XuluObject[] |
getObjects(Class type)
Liefert alle Objekte aus dem Datenpool, die Instanzen eines bestimmten Typs sind. |
XuluObject[] |
getObjects(String name)
Liefert Objekte aus dem Datenpool. |
int |
getSize()
Liefert die Anzahl an Objekten im Datenpool. |
boolean |
isDisposed()
Prueft, ob der Datenpool zerstoert ist. |
void |
removeObject(long id)
Entfernt ein Objekt aus dem Datenpool. |
void |
removeObject(XuluObject object)
Entfernt ein Objekt aus dem Datenpool. |
void |
setAutoOverwriteDuplicateNames(boolean autoOverwrite)
Bestimmt, ob beim Einfuegen eines neuen Objekte bestehende Objekte mit dem gleichen Namen automatisch aus dem Datenpool entfernt werden ( true ),
oder die Einfuege-Operation zurueckgewiesen wird (false ). |
void |
setDuplicateNamesAllowed(boolean duplAllowed)
Bestimmt, ob sich mehrere Objekte mit demselben Namen im Datenpool befinden duerfen. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DataPool(int cap)
cap
- initiale Kapazitaet des Poolspublic DataPool()
Method Detail |
---|
public void dispose()
dispose
in interface XuluComponent
XuluObject.dispose()
public boolean isDisposed()
isDisposed
in interface XuluComponent
dispose()
public int getSize()
public Enumeration asEnumeration()
public XuluObject getObject(long id)
id
- ID des Objekts im Datenpool
null
falls es im Pool kein Objekt mit dieser
ID gibtpublic XuluObject[] getObjects(String name)
name
- Bezeichnung des Objekts im Datenpool
public XuluObject[] getObjects(Class type)
type
- zu suchende Typ
public boolean contains(long id)
id
- ID des Objektspublic boolean contains(String name)
name
- Bezeichnung des Objektspublic String createUniqueDescription(String baseName)
baseName
- Basis-Bezeichnungpublic void addObject(XuluObject object)
DataPoolChangeEvent
fuer das neue Objekt.
DuplicateXuluObjectIDException
- falls im Datenpool bereits ein Objekt
mit der gleichen Objekt-ID existiert
DuplicateXuluObjectNameException
- falls die Duplikat-Eigenschaft
abgeschaltet ist und im Datenpool bereits ein Objekt mit der
gleichen Objekt-Beschreibung existiertDataPool.DataPoolChangeEvent.OBJECT_ADDED
public void removeObject(XuluObject object)
DataPoolChangeEvent
fuer das entfernte Objekt. Existiert das Objekt nicht im DatenPool, geschieht
nichts (es wird auch kein Event erzeugt).
object
- zu entfernendes Xulu-ObjektDataPool.DataPoolChangeEvent.OBJECT_REMOVED
public void removeObject(long id)
DataPoolChangeEvent
fuer das entfernte Objekt. Existiert im DatenPool kein Objekt mit der ID,
geschieht nichts (es wird auch kein Event erzeugt).
id
- ID des Xulu-Objekts im DatenpoolDataPool.DataPoolChangeEvent.OBJECT_REMOVED
public boolean getDuplicateNamesAllowed()
setAutoOverwriteDuplicateNames(boolean)
public void setDuplicateNamesAllowed(boolean duplAllowed)
false
gesetzt haengt es von der
autoOverwriteDuplNames
-Eigenschaft
ab, ob eine Einfuege-Operation zurueckgewiesen wird, oder das bestehende Objekt
automatisch entfernt wird.false
duplAllowed
- wenn true
, koennen mehrere Objekte mit demselben
Namen im Datenpool vorkommenpublic boolean getAutoOverwrideDuplicateNames()
true
),
oder die Einfuege-Operation zurueckgewiesen wird (false
).
Diese Eigenschaft ist nur relevant, wenn Duplikate verboten sind. false
getDuplicateNamesAllowed()
public void setAutoOverwriteDuplicateNames(boolean autoOverwrite)
true
),
oder die Einfuege-Operation zurueckgewiesen wird (false
).
Diese Eigenschaft ist nur relevant, wenn Duplikate verboten sind.false
setDuplicateNamesAllowed(boolean)
public static long generateUniqueID()
DataPool
-Instanzen!)
eindeutig ist.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |