de.bsvrz.pua.prot.util
Class ProcessingInformation

java.lang.Object
  extended by de.bsvrz.pua.prot.util.ProcessingInformation

public class ProcessingInformation
extends java.lang.Object

Diese Klasse modelliert die aus dem Skript extrahierten Informationen, die zur Datenaufbereitung nötig sind. ACHTUNG: Änderungen an dieser Klasse müssen im Feinentwurf berücksichtigt werden!

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

Nested Class Summary
static class ProcessingInformation.ApplyAggregation
          Mögliche Anwendungsarten für die Aggregationen.
 
Constructor Summary
ProcessingInformation()
          Erzeugt das Objekt.
ProcessingInformation(SystemObject mainObject)
          Erzeugt das Objekt.
 
Method Summary
 void addElement(Elements attribute)
          Fügt ein weiteres Elements hinzu.
 boolean equals(java.lang.Object obj)
          Bezieht alle Membervariablen des Objekts in den Vergleich mit ein.
 java.util.HashSet<RealAttributeDescription> getAllRealAttributes()
          Liefert alle realen Attribute zurück, die im Skript verwendet werden.
 java.util.HashSet<RealElement> getAllRealElements()
          Liefert eine Liste der realen Attribute und Attributgruppen, die vom Archivsystem angefragt werden sollen.
 ArchiveDataKind[] getArchiveDataKind()
           
 java.util.List<Elements> getAttributes()
           
 Tuple<ExpressionTree,java.lang.Boolean> getConstraint()
           
 java.util.HashSet<Qualifier> getDataIndices()
          Berechnet die für das Skript benötigten Qualifizierungen.
 java.util.Set<java.lang.Integer> getDurationPosition()
          Liefert die Positionen des Zeitdauer-Attributs zurück.
 SystemObject getMainObject()
          Gibt das Hauptobjekt des Protokolls zurück.
 java.util.List<ProcessingInformation.ApplyAggregation> getOrder()
           
 java.util.List<Tuple<java.lang.Long,java.lang.Long>> getPeriods()
           
 short getSimVar()
           
 PostFilter getUserFilter()
           
 boolean isDeltaProtocol()
           
 boolean isSaveProtocol()
           
 boolean isShown(java.lang.Object obj)
          Zeigt an ob das Element im Spalten-Bereich verwendet wird.
 void setArchiveDataKind(ArchiveDataKind[] archiveDataKind)
          Wirft eine Exception falls das Feld leer ist oder null.
 void setAttributes(java.util.List<Elements> attributes)
           
 void setConstraint(Tuple<ExpressionTree,java.lang.Boolean> constraint)
          Erzeugt zusätzlich Liste mit Datenindices, die vom Archivsystem angefragt werden sollen und über getDataIndices() abgefragt werden können.
 void setDeltaProtocol(boolean deltaProtocol)
           
 void setMainObject(SystemObject mainObject)
          Setzt das Hauptobjekt des Protokoll.s
 void setOrder(java.util.HashSet<ProcessingInformation.ApplyAggregation> rules)
          Ordnet den Vektor der Aggregations-Anwendungsvorschriften von grob nach fein
 void setPeriods(java.util.List<Tuple<java.lang.Long,java.lang.Long>> periods)
           
 java.lang.String setPostFilter(java.lang.String filter)
          Legt den Nachfilter fest.
 void setSaveProtocol(boolean saveProtocol)
           
 void setSimVar(short simVar)
          Legt Simulationsvariante fest.
 void setUserFilter(PostFilter userFilter)
           
 java.lang.String toHtml(java.lang.String name)
          HTML Ausgabe.
 void update()
          Neuberechnung der Liste der Elemente, die vom Archivsystem angefragt werden sollen.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProcessingInformation

public ProcessingInformation()
Erzeugt das Objekt.


ProcessingInformation

public ProcessingInformation(SystemObject mainObject)
Erzeugt das Objekt.

Parameters:
mainObject - Hauptobjekt des Protokolls.
Method Detail

getAttributes

public java.util.List<Elements> getAttributes()
Returns:
Liefert alle Attribute, die im "Spalten" Bereich definiert wurden.

setAttributes

public void setAttributes(java.util.List<Elements> attributes)
Parameters:
attributes - Attribute die im "Spalten" Bereich definiert wurden.

addElement

public void addElement(Elements attribute)
Fügt ein weiteres Elements hinzu. ACHTUNG: Die Liste der Datenindizes wird NICHT neu berechnet. Daher muss ggf. update() aufgerufen werden.

Parameters:
attribute -

update

public void update()
Neuberechnung der Liste der Elemente, die vom Archivsystem angefragt werden sollen. Diese Elemente können mittels getAllRealElements() abgerufen werden. Diese Liste enthält alle realen Attribute (aus dem Spaltenbereich und aus Ausdrücken (temporäre Attribute, Constraint) und Attributgruppen. Berechnet außerdem, welche Elemente im Spaltenbereich vorkommen. Diese Information kann dann mit isShown(Object) abgerufen werden. Wichtig: Diese Methode darf erst aufgerufen werden, wenn sichergestellt ist, dass KEINE REKURSIONEN in den Ausdrücken verwendet werden! D.h. es muss vorher TempAttributeSemantics.cleanUp(ProcessingParameter, boolean) aufgerufen werden!


getConstraint

public Tuple<ExpressionTree,java.lang.Boolean> getConstraint()
Returns:
Einschränkung.

setConstraint

public void setConstraint(Tuple<ExpressionTree,java.lang.Boolean> constraint)
Erzeugt zusätzlich Liste mit Datenindices, die vom Archivsystem angefragt werden sollen und über getDataIndices() abgefragt werden können.

Parameters:
constraint - Einschränkung

getDataIndices

public java.util.HashSet<Qualifier> getDataIndices()
Berechnet die für das Skript benötigten Qualifizierungen.

Returns:
Alle im Skript verwendeten Datenidentifikationen.

getOrder

public java.util.List<ProcessingInformation.ApplyAggregation> getOrder()
Returns:
Anwendung der Aggregation.

setOrder

public void setOrder(java.util.HashSet<ProcessingInformation.ApplyAggregation> rules)
              throws SemanticErrorException
Ordnet den Vektor der Aggregations-Anwendungsvorschriften von grob nach fein

Parameters:
rules - Anwendungsvorschrift für die Aggregationen
Throws:
SemanticErrorException - Falls Wiederholungen in der anwendung auftreten (etwa weil gleichzeitig sowohl gesamt(objekt) als auch gesamt(spalte) verwendet wurde)

getUserFilter

public PostFilter getUserFilter()
Returns:
Nachfilter.

setUserFilter

public void setUserFilter(PostFilter userFilter)
Parameters:
userFilter - Nachfilter.

setPostFilter

public java.lang.String setPostFilter(java.lang.String filter)
Legt den Nachfilter fest.

Parameters:
filter - Klassenname des Nachfilters
Returns:
Null oder eine Fehlermeldung im Fehlerfall.

getPeriods

public java.util.List<Tuple<java.lang.Long,java.lang.Long>> getPeriods()
Returns:
Zeitbereiche für die das Protokoll erstellt wwird.

setPeriods

public void setPeriods(java.util.List<Tuple<java.lang.Long,java.lang.Long>> periods)
Parameters:
periods - Zeitbereiche für die das Protokoll erstellt wwird.

getSimVar

public short getSimVar()
Returns:
Simulationsvariante.

setSimVar

public void setSimVar(short simVar)
Legt Simulationsvariante fest. Es wird nicht geprüft, ob die Simulationsvariante gültig ist.

Parameters:
simVar - Simulationsvariante

isDeltaProtocol

public boolean isDeltaProtocol()
Returns:
Returns the deltaProtocol.

setDeltaProtocol

public void setDeltaProtocol(boolean deltaProtocol)
Parameters:
deltaProtocol - The deltaProtocol to set.

isSaveProtocol

public boolean isSaveProtocol()
Returns:
Returns the saveProtocol.

setSaveProtocol

public void setSaveProtocol(boolean saveProtocol)
Parameters:
saveProtocol - The saveProtocol to set.

toHtml

public java.lang.String toHtml(java.lang.String name)
HTML Ausgabe.

Parameters:
name - Name.
Returns:
String mit HTML Ausgabe.

getArchiveDataKind

public ArchiveDataKind[] getArchiveDataKind()
Returns:
Returns the archiveDataKind.

setArchiveDataKind

public void setArchiveDataKind(ArchiveDataKind[] archiveDataKind)
                        throws FailureException
Wirft eine Exception falls das Feld leer ist oder null.

Parameters:
archiveDataKind - The archiveDataKind to set.
Throws:
FailureException - Das Feld ist null oder leer

equals

public boolean equals(java.lang.Object obj)
Bezieht alle Membervariablen des Objekts in den Vergleich mit ein.

Overrides:
equals in class java.lang.Object
See Also:
Object.equals(java.lang.Object)

getAllRealElements

public java.util.HashSet<RealElement> getAllRealElements()
Liefert eine Liste der realen Attribute und Attributgruppen, die vom Archivsystem angefragt werden sollen.

Returns:
Liste mit allen realen Attributen aus dem Spaltenbereich und aus den temporären Attributen und Attributgruppen.

setMainObject

public void setMainObject(SystemObject mainObject)
Setzt das Hauptobjekt des Protokoll.s

Parameters:
mainObject - Hauptobjekt des Protokolls.

getMainObject

public SystemObject getMainObject()
Gibt das Hauptobjekt des Protokolls zurück.

Returns:
Hauptobjekt.

isShown

public boolean isShown(java.lang.Object obj)
Zeigt an ob das Element im Spalten-Bereich verwendet wird.

Parameters:
obj - Element
Returns:
true falls das Element im Spalten-Bereich verwendet wird. false sonst.

getDurationPosition

public java.util.Set<java.lang.Integer> getDurationPosition()
Liefert die Positionen des Zeitdauer-Attributs zurück.

Returns:
Positionen der Zeitdauer Attribute. Wird kein Zeitdauer-Attribut verwendet, dann wird ein leeres Set zurückgegeben.

getAllRealAttributes

public java.util.HashSet<RealAttributeDescription> getAllRealAttributes()
Liefert alle realen Attribute zurück, die im Skript verwendet werden.

Returns:
Relae Attribute die im Skript verwendet werden. Es werden nicht nur die Attribute aus dem Spalten-Bereich, sondern auch die Attribute aus dem Definitionen-Bereich zurückgeliefert.


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