de.bsvrz.pua.prot.util.attributes
Class RealAttributeDescription

java.lang.Object
  extended by de.bsvrz.pua.prot.util.attributes.Elements
      extended by de.bsvrz.pua.prot.util.attributes.AttributeDescription
          extended by de.bsvrz.pua.prot.util.attributes.RealAttributeDescription
All Implemented Interfaces:
RealElement

public class RealAttributeDescription
extends AttributeDescription
implements RealElement

Beschreibt ein reales Attribut.

Version:
$Revision: 1.2 $ / $Date: 2008/01/22 16:55:49 $ / ($Author: yvonnes $)
Author:
beck et al. projects GmbH, Martin Hilgers

Field Summary
 Attribute attribute
          Das Attribut, das durch RealAttributeDescription beschrieben wird.
 java.lang.String element
          Falls das Attribut ein Listenattribut ist, wird mittels Element der Name des Elements festgelegt, auf dessen Wert zugegriffen werden soll.
protected  java.lang.Integer index
          Falls das Attribut ein Array ist, legt dieser Index fest, welcher Wert aus dem Feld geholt werden soll.
 Qualifier qualifier
          Qualifizierung des Attributs
 RealAttributeDescription reference
          Attribut, auf das über eine Referenz zugegriffen werden soll.
 
Fields inherited from class de.bsvrz.pua.prot.util.attributes.AttributeDescription
name
 
Fields inherited from class de.bsvrz.pua.prot.util.attributes.Elements
aggregation, columnName
 
Constructor Summary
RealAttributeDescription(DataModel model, java.lang.String so, java.lang.String atg, java.lang.String asp, java.lang.String name, short simVar, java.lang.String columnName, Aggregation aggregation)
          Konstruktor zu Testzwecken.
RealAttributeDescription(short simVar, boolean padData)
           
 
Method Summary
 RealAttributeDescription clone()
          Klont die Attributbeschreibung.
 boolean equals(java.lang.Object obj)
          Vergleicht zwei RealAttributeDescription Objekte.
 java.lang.Integer getIndex()
          Liefert den Index falls das Attribut ein Feldattribut ist.
 java.lang.String getPrettyName()
          Liefert den Namen des Attributs zurück, der als Spaltenüberschrift verwendet werden soll, wenn kein Spaltenname angegeben wurde.
 java.util.Collection<Qualifier> getQualifiers()
          Gibt den verwendeten Dataindex zurück
 java.util.HashSet<RealAttributeDescription> getRealElements()
          Gibt eine Referenz auf dieses Objekt zurück.
 Qualifier getReferenceQualification()
          Liefert die Qualifizierung des Attributs (inkl.
 SystemObject getSystemObject()
           
 int hashCode()
          Hashwert des Objekts ist abhängig von allen Membervariablen.
 boolean isAtomar()
          Überprüft ob das Attribut atomar ist.
 boolean isReference()
          Zeigt an ob es sich bei dem Attribut um eine Referenz handelt.
 boolean padData()
          Zeigt an ob die Datenaufbereitung Daten für dieses Attribut auffüllen soll.
 void setIndex(java.lang.Integer index)
          Falls das Attribut ein Array ist, legt dieser Index fest, welcher Wert aus dem Feld geholt werden soll.
 java.lang.String toString()
           
 void validate()
          Überprüft die Beschreibung des Attributs auf ihre Gültigkeit.
 
Methods inherited from class de.bsvrz.pua.prot.util.attributes.Elements
hasAggregation, setAggregation
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

qualifier

public Qualifier qualifier
Qualifizierung des Attributs


index

protected java.lang.Integer index
Falls das Attribut ein Array ist, legt dieser Index fest, welcher Wert aus dem Feld geholt werden soll. getIndex(), element und reference schließen sich gegenseitig aus. Es ist immer nur jeweils eine Variable mit einem Wert belegt


element

public java.lang.String element
Falls das Attribut ein Listenattribut ist, wird mittels Element der Name des Elements festgelegt, auf dessen Wert zugegriffen werden soll. getIndex(), element und reference reference schließen sich gegenseitig aus. Es ist immer nur jeweils eine Variable mit einem Wert belegt


reference

public RealAttributeDescription reference
Attribut, auf das über eine Referenz zugegriffen werden soll. getIndex(), element und reference schließen sich gegenseitig aus. Es ist immer nur jeweils eine Variable mit einem Wert belegt


attribute

public Attribute attribute
Das Attribut, das durch RealAttributeDescription beschrieben wird. Diese Variable wird für interne Berechnungen von Semantics verwendet und sollte von anderen Klassen nicht verwendet werden.

Constructor Detail

RealAttributeDescription

public RealAttributeDescription(short simVar,
                                boolean padData)
Parameters:
simVar - Simulationsvariante.
padData - true falls Daten durch die Datenaufbereitung aufgefüllt werden sollen.

RealAttributeDescription

public RealAttributeDescription(DataModel model,
                                java.lang.String so,
                                java.lang.String atg,
                                java.lang.String asp,
                                java.lang.String name,
                                short simVar,
                                java.lang.String columnName,
                                Aggregation aggregation)
                         throws FailureException
Konstruktor zu Testzwecken. Daten werden aufgefüllt.

Parameters:
model - Konfiguration.
so - Systemobjekt.
atg - Attributgruppe.
asp - Aspekt.
columnName - Spaltenname. Kann null sein.
aggregation - Zu verwendende Aggregation. Kann null sein.
name - Name des Attributs. Kann null sein.
simVar - Simulationsvariante.
Throws:
FailureException - Ungültige Qualifizierung.
Method Detail

equals

public boolean equals(java.lang.Object obj)
Vergleicht zwei RealAttributeDescription Objekte. Dabei werden alle Member-Variablen (außer Elements.columnName und Elements.aggregation) verglichen Object darf auch vom Typ RealArchiveAttribute sein. In diesem Fall wird nur die zugeordnete Attributbeschreibung verglichen. Dies ist notwendig, damit diese beiden Typen austauschbar in einer Hashtable verwendet werden können.

Overrides:
equals in class Elements
Parameters:
obj - Vergleichsobjekt
Returns:
True falls die Objekte bis auf columnName und aggregation übereinstimmen, false sonst
See Also:
Object.equals(java.lang.Object)

getQualifiers

public java.util.Collection<Qualifier> getQualifiers()
Gibt den verwendeten Dataindex zurück

Specified by:
getQualifiers in class Elements
Returns:
Datenindex des AttributeDescription

hashCode

public int hashCode()
Hashwert des Objekts ist abhängig von allen Membervariablen. (außer columnName & aggregation)

Overrides:
hashCode in class java.lang.Object
Returns:
Hashwert des Objekts

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object
See Also:
Object.toString()

clone

public RealAttributeDescription clone()
Klont die Attributbeschreibung. Dabei wird eine neue Aggregation angelegt, d.h. der Zustand der Aggregation geht verloren.

Overrides:
clone in class java.lang.Object
Returns:
Geklonte Attributbeschreibung.

isAtomar

public boolean isAtomar()
                 throws SemanticErrorException
Überprüft ob das Attribut atomar ist. Ein nicht-atomares Attribut ist ein Feld ohne Indexangabe und eine Attributliste ohne 'element'. Wird rekursiv geprüft, d.h. ist das Attribut eine Attributliste mit 'element', so wird überprüft, ob 'element' atomar ist. Ist 'attribute' nicht gesetzt, so wird immer true zurückgegeben.

Returns:
True, falls das Attribut atomar ist, false sonst.
Throws:
SemanticErrorException - Fehler bei der Kommunikation mit der Konfiguration

validate

public void validate()
              throws CriticalParserException
Überprüft die Beschreibung des Attributs auf ihre Gültigkeit. Es wird überprüft, ob die Qualifizierung und der Attributname korrekt sind. Die Referenz ebenfalls überprüft.

Throws:
CriticalParserException - Falls die Attributbeschreibung ungültig ist

getSystemObject

public SystemObject getSystemObject()
Returns:
Liefert das Stellvertreterobjekt des Attributs, dass durch dieses Java-Objekt abgebildet wird.

isReference

public boolean isReference()
Zeigt an ob es sich bei dem Attribut um eine Referenz handelt.

Returns:
true falls es sich um eine Referenz handelt.false sonst.

getRealElements

public java.util.HashSet<RealAttributeDescription> getRealElements()
Gibt eine Referenz auf dieses Objekt zurück.

Specified by:
getRealElements in class Elements
Returns:
Menge der realen Elemente.
See Also:
Elements.getRealElements()

getIndex

public java.lang.Integer getIndex()
Liefert den Index falls das Attribut ein Feldattribut ist.

Returns:
Index. Kann null sein.

setIndex

public void setIndex(java.lang.Integer index)
              throws SemanticErrorException
Falls das Attribut ein Array ist, legt dieser Index fest, welcher Wert aus dem Feld geholt werden soll. Das erste Feldelement hat den Index 1! getIndex(), element und reference schließen sich gegenseitig aus. Es ist immer nur jeweils eine Variable mit einem Wert belegt.

Parameters:
index - Index.
Throws:
SemanticErrorException - Index ist außerhalb des Wertebereiches [1,Integer.MAX_VALUE]

getPrettyName

public java.lang.String getPrettyName()
Liefert den Namen des Attributs zurück, der als Spaltenüberschrift verwendet werden soll, wenn kein Spaltenname angegeben wurde.

Returns:
Spaltenname.

getReferenceQualification

public Qualifier getReferenceQualification()
Liefert die Qualifizierung des Attributs (inkl. sämtlicher Referenzen) zurück.

Returns:
Vollständige Qualifzierung. Objekt vom Typ ReferenceQualifier falls es sich um ein Referenzattribut handelt.

padData

public boolean padData()
Description copied from interface: RealElement
Zeigt an ob die Datenaufbereitung Daten für dieses Attribut auffüllen soll.

Specified by:
padData in interface RealElement
Returns:
true falls Daten durch die Datenaufbereitung aufgefüllt werden sollen.
See Also:
RealElement.padData()


Copyright © 2005-2008 beck et al. projects GmbH All Rights Reserved.