de.bsvrz.pua.prot.interpreter.semantics
Class Semantics

java.lang.Object
  extended by de.bsvrz.pua.prot.interpreter.semantics.Semantics
All Implemented Interfaces:
SemanticChecks

public class Semantics
extends java.lang.Object
implements SemanticChecks

Diese Klasse bietet Methoden zum Überprüfen der Semantik eines Skripts. Semantics wird vom ProtocolParser und ProtocolTreeWalker verwendet, um die Semantik des Skripts zu überprüfen. Falls processScript true ist, dann wird überprüft, ob jede Qualifizierung ein Objekt enthält. Enthält sie statt des Objekts einen Objekttyp, so wird eine CriticalParserException geworfen. Dies ist notwendig, da zur Datenaufbereitung konkrete Objekte benötigt werden. Vor der Verwendung von pi durch andere Klassen muss SemanticChecks.cleanUp(ProcessingParameter, boolean) aufgerufen werden, um abschließende semantische Überprüfungen durchzuführen.

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

Field Summary
protected  ProcessingInformation pi
          Datenobjekt, in dem alle zur Datenaufbereitung notwendigen Daten abgelegt werden
protected  SymbolTable symbolTable
          Symboltabelle
 
Constructor Summary
Semantics(DataModel model, SymbolTable symbol, ProcessingInformation pi)
          Konstruktor.
 
Method Summary
 void cleanUp(ProcessingParameter pp, boolean processScript)
          Führt abschließende Semantiküberprüfungen durch und stellt die zur Datenaufbereitung notwendigen Informationen in pi zusammen.
 AggregationSemantics getAggregationSemantics()
           
 AttributeGroupSemantics getAttributeGroupSemantics()
           
 AttributeSemantics getAttributeSemantics()
           
 MemberCheck getCheck()
          Liefert das Hilfsobjekt für Typüberprüfungen zurück.
 ExpressionSemantics getExpressionSemantics()
           
 MiscellaneousSemantics getMiscSemantics()
           
 ProcessingInformation getProcessingInformation()
          Gibt die zur Datenaufbereitung notwendigen Informationen zurück.
 RealAttributeSemantics getRealAttributeSemantics()
           
 ScopeSemantics getScopeSemantics()
           
 TempAttributeSemantics getTempAttributeSemantics()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

symbolTable

protected SymbolTable symbolTable
Symboltabelle


pi

protected ProcessingInformation pi
Datenobjekt, in dem alle zur Datenaufbereitung notwendigen Daten abgelegt werden

Constructor Detail

Semantics

public Semantics(DataModel model,
                 SymbolTable symbol,
                 ProcessingInformation pi)
          throws CriticalParserException
Konstruktor. Erzeugt die Objekte zur Semantiküberprüfung.

Parameters:
model - Verbindung zur Konfiguration
symbol - Symboltabelle
pi - Objekt, in das die gewonnenen Informationen abgelegt werden sollen
Throws:
CriticalParserException - Falls einer der Parameter null ist
Method Detail

cleanUp

public void cleanUp(ProcessingParameter pp,
                    boolean processScript)
             throws SemanticErrorException
Führt abschließende Semantiküberprüfungen durch und stellt die zur Datenaufbereitung notwendigen Informationen in pi zusammen. Dabei werden die SemanticChecks.cleanUp(ProcessingParameter, boolean) Methoden aller Objekte, die Semantiküberprüfungen durchführen, aufgerufen. Außerdem wird, falls processScript true ist, überprüft, ob alle Aspekte gebunden werden konnten.

Specified by:
cleanUp in interface SemanticChecks
Parameters:
pp - Auftragsparameter
processScript - true wenn ein Protokoll erstellt werden soll. false sonst.
Throws:
SemanticErrorException - Falls es zu einem Fehler bei der Überprüfung kommt

getProcessingInformation

public ProcessingInformation getProcessingInformation()
Gibt die zur Datenaufbereitung notwendigen Informationen zurück.

Returns:
ProcessingInformation Gibt die zur Datenaufbereitung notwendigen Informationen zurück.

getCheck

public MemberCheck getCheck()
Liefert das Hilfsobjekt für Typüberprüfungen zurück.

Returns:
Hilfsobjekt für Typüberprüfungen.

getAggregationSemantics

public AggregationSemantics getAggregationSemantics()
Returns:
Objekt das die Semantik von Aggregationen überprüft

getAttributeGroupSemantics

public AttributeGroupSemantics getAttributeGroupSemantics()
Returns:
Objekt das die Semantik von Attributgruppen überprüft

getAttributeSemantics

public AttributeSemantics getAttributeSemantics()
Returns:
Objekt das die Semantik von Attributen aus dem Spaltenbereich überprüft

getExpressionSemantics

public ExpressionSemantics getExpressionSemantics()
Returns:
Objekt das die Semantik von Ausdrücken überprüft

getMiscSemantics

public MiscellaneousSemantics getMiscSemantics()
Returns:
Objekt das die Semantik von diversen Konstrukten überprüft

getRealAttributeSemantics

public RealAttributeSemantics getRealAttributeSemantics()
Returns:
Objekt das die Semantik von Realen Attributen überprüft

getScopeSemantics

public ScopeSemantics getScopeSemantics()
Returns:
Objekt das die Semantik des Mit-Konstrukts überprüft

getTempAttributeSemantics

public TempAttributeSemantics getTempAttributeSemantics()
Returns:
Objekt das die Semantik von temporären Attributen überprüft


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