|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectAbstractObjectTraceable
edu.bonn.xulu.data.AbstractXuluObject
public abstract class AbstractXuluObject
Diese Klasse bildet die Basisimplementierung eines Xulu-Datenobjekts. Diese
stellen die Objekte dar, die im Xulu-Datenpool
verwaltet
werden koennen.
AbstractXuluObject
ist fest aus einer Menge an Properties
zusammengesetzt, welche in einem schmitzm.data.property.PropertySet
verwaltet werden. Diese sind von der jeweiligen Implementierung (im
Konstruktor) festzulegen. Moeglichkeiten, dynamisch Eigenschaften hinzufuegen
oder zu entfernen besteht nicht. Hierzu kann DynamicXuluObject
genutzt
werden.
Jedes Xulu-Datenobjekt erhaelt (automatisch) bei der Erzeugung eine ID, mit
der es im Datenpool (sogar ueber alle Datenpool-Instanzen!) eindeutig
identifiziert werden kann (DataPool.generateUniqueID()
).
Field Summary | |
---|---|
protected ObjectListener |
propertyChangeListener
Lauscht auf Aenderungen an den Properties und propagiert diese an alle Listener auf dem XuluObject weiter |
protected PropertySet |
propSet
Speichert die Eigenschaften des Xulu-Objekts. |
Fields inherited from interface edu.bonn.xulu.data.XuluObject |
---|
PROP_STYLE |
Fields inherited from interface edu.bonn.xulu.appl.XuluConstants |
---|
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 | |
---|---|
AbstractXuluObject()
Erzeugt eine neue XuluObject -Instanz. |
|
AbstractXuluObject(String desc)
Erzeugt eine neue XuluObject -Instanz. |
Method Summary | |
---|---|
boolean |
containsMultipleValues()
Liefert false , da ein Xulu-Objekt von jeder Eigenschaft
immer nur eine Instanz enthaelt. |
boolean |
containsProperty(String name)
Prueft, ob das Xulu-Objekt eine bestimmte Eigenschaft enthaelt. |
void |
dispose()
Zerstoert das Xulu-Objekt, indem alle seine Properties zerstoert werden. |
boolean |
equalsInStructure(Object object)
Vergleicht die Struktur der Property mit einer anderen auf Gleichheit. |
int |
getAttrCount()
Liefert die Anzah1 an Properties des Xulu-Objekt. |
Enumeration<ObjectStructure> |
getAttrTypes()
Liefert eine Liste, in der genau so viele Elemente enthaelt, wie das Xulu-Objekt Eigenschaften hat. |
String |
getDescription()
Liefert die Beschreibung des Xulu-Objekts fuer den Datenpool. |
long |
getID()
Liefert die ID, mit der das Objekt in allen Datenpools eindeutig angesprochen werden kann. |
String |
getName()
Liefert die Beschreibung des Xulu-Objekts fuer den Datenpool. |
Property[] |
getProperties()
Liefert die Eigenschaften des Xulu-Objekts als Array. |
Properties |
getProperties(Class type)
Liefert alle Eigenschaften des Xulu-Objekts, die einem bestimmten Typ angehoeren. |
Property |
getProperty(String name)
Liefert eine bestimmte Eigenschaft des Xulu-Objekts. |
int |
getPropertyCount()
Liefert die Anzahl an Eigenschaften des Xulu-Objekts. |
String[] |
getPropertyNames()
Liefert die Namen aller Eigenschaften des Xulu-Objekts. |
PropertyType[] |
getPropertyTypes()
Liefert die Typen aller Eigenschaften des Xulu-Objekts. |
String |
getStructureName()
Liefert die Bezeichnung des Xulu-Objekts. |
boolean |
isAccessed()
Prueft, ob aktuell auf eine Property des Xulu-Objekts zugegriffen wird. |
boolean |
isDisposed()
Prueft, ob das Objekt zerstoert ist. |
boolean |
isStructureNamed()
Liefert true . |
void |
setDescription(String desc)
Setzt die Beschreibung des Xulu-Objekts fuer den Datenpool. |
void |
setName(String desc)
Setzt die Beschreibung des Xulu-Objekts fuer den Datenpool. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final PropertySet propSet
PropertySet
belegt werden (final
),
da es mit einem ObjectListener
belegt wurde, der auf Aenderungen
an dem PropertySet
reagiert (jeder hinzugefuegten Eigenschaft
wird ein ObjectListener
hinzugefuegt, damit das XuluObject
Aenderungen an seinen Properties mitbekommt und ggf. weiterleiten kann).
protected ObjectListener propertyChangeListener
XuluObject
weiter
Constructor Detail |
---|
public AbstractXuluObject(String desc)
XuluObject
-Instanz.
desc
- Beschreibung, welche im Datenpool angezeigt wird (wird
null
uebergeben, wird eine Standardbeschreibung
erzeugt)public AbstractXuluObject()
XuluObject
-Instanz. Diese erhaelt eine Default-Beschreibung,
bestehend aus dem Klassennamen und einer laufenden Nummer.
Method Detail |
---|
public String getDescription()
getDescription
in interface XuluObject
public void setDescription(String desc)
NameChangeEvent
an alle Listener weitergeleitet.
setDescription
in interface XuluObject
desc
- Beschreibung fuer das Objektpublic String getName()
getDescription()
.
public void setName(String desc)
setDescription(String)
.
desc
- Beschreibung fuer das Objektpublic long getID()
getID
in interface XuluObject
public void dispose()
dispose
in interface XuluComponent
dispose
in interface XuluObject
Property#dispose()
public boolean isDisposed()
isDisposed
in interface XuluComponent
isDisposed
in interface XuluObject
XuluObject.dispose()
public boolean isAccessed()
isAccessed
in interface XuluObject
public int getPropertyCount()
public Property[] getProperties()
public Properties getProperties(Class type)
Property
-Untertyp
angegeben werden (z.B. schmitzm.data.property.ListProperty
),
als auch ein Objekt-Typ (Typ den eine Property aufnehmen kann; z.B.
int.class
).Properties
-Instanz liefert,
lassen sich recht einfach verschiedene Filter hintereinander anwenden:
Properties.getProperties(ListProperty.class).getProperties(int.class).getPropertyNames()
int
-Werte
aufnehmen koennen.
public String[] getPropertyNames()
public PropertyType[] getPropertyTypes()
public Property getProperty(String name)
name
- Name der Eigenschaft
null
falls das Xulu-Objekt keine Eigenschaft dieses
Namens enthaeltpublic boolean containsProperty(String name)
name
- Name der Eigenschaftpublic boolean isStructureNamed()
true
.
public String getStructureName()
getDescription()
public int getAttrCount()
getPropertyCount()
public Enumeration<ObjectStructure> getAttrTypes()
ObjectStructure
.
public boolean equalsInStructure(Object object)
object
- eine anderes ObjectStructure
-ObjektValuePropertyType#equalsInStructure(Object)
public boolean containsMultipleValues()
false
, da ein Xulu-Objekt von jeder Eigenschaft
immer nur eine Instanz enthaelt.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |