schmitzm.data
Interface ObjectStructure

All Known Subinterfaces:
DynamicProperties, Properties
All Known Implementing Classes:
ListProperty, MatrixProperty, Property, PropertySet, ScalarProperty, ValueProperty

public interface ObjectStructure

Diese Klasse stellt die Struktur (nicht den Inhalt) eines "komplexen" Objekts (Datentyps) dar. Ein "komplexes" Objekt kann z.B. eine Liste sein, oder eine Menge von Eigenschaften. Auch eine skalare Eigenschaft kann bereits als komplexes Objekt aufgefasst werden, da sie einen Namen und ein Unterobjekt enthaelt (welches wiederum komplex sein kann!).

Version:
1.0
Author:
Martin Schmitz (University of Bonn/Germany)

Method Summary
 boolean containsMultipleValues()
          Prueft, ob die Objektstruktur mehrere Instanzen aufnehmen kann.
 boolean equalsInStructure(Object object)
          Prueft, ob die Objekt-Struktur mit einer anderen identisch ist.
 int getAttrCount()
          Liefert die Anzahl an Attributen, die der Datentyp hat.
 Enumeration getAttrTypes()
          Liefert die Typen aller Attribute des Objekttyps.
 String getStructureName()
          Liefert den Namen der ObjectStructure, falls sie benannt ist.
 boolean isStructureNamed()
          Prueft, ob der Objekttyp einen Namen besitzt. z.B. ist eine Property i.d.R. benannt, ein PropertySet jedoch nicht.
 

Method Detail

getAttrCount

int getAttrCount()
Liefert die Anzahl an Attributen, die der Datentyp hat. Bei einem Properties-Objekt entspricht dies z.B. der Anzahl an Propertys. Bei einer Liste von einfachen Elementen ist die Anzahl 1.


getAttrTypes

Enumeration getAttrTypes()
Liefert die Typen aller Attribute des Objekttyps. Dies kann wiederum eine ObjectStructure sein, oder eine Class-Instanz, falls das Attribut nicht weiter strukturiert werden kann.

Returns:
Aufzaehlung, in der jedes Element vom Typ Class oder ObjectStructure ist

isStructureNamed

boolean isStructureNamed()
Prueft, ob der Objekttyp einen Namen besitzt. z.B. ist eine Property i.d.R. benannt, ein PropertySet jedoch nicht.


getStructureName

String getStructureName()
Liefert den Namen der ObjectStructure, falls sie benannt ist.

Returns:
null falls die Struktur unbenannt ist
See Also:
isStructureNamed()

containsMultipleValues

boolean containsMultipleValues()
Prueft, ob die Objektstruktur mehrere Instanzen aufnehmen kann. Dies ist z.B. fuer Listen der Fall, nicht jedoch fuer ein PropertySet, da dieses zwar verschiedene Attributwerte aufnimmt, fuer jedes Attribut jedoch immer nur eine Auspraegung!


equalsInStructure

boolean equalsInStructure(Object object)
Prueft, ob die Objekt-Struktur mit einer anderen identisch ist.

Parameters:
object - andere ObjectStructure