Class TempAttributeDescription

  • All Implemented Interfaces:
    java.lang.Cloneable

    public class TempAttributeDescription
    extends AttributeDescription
    implements java.lang.Cloneable
    Repräsentiert ein temporäres Attribut.
    • Constructor Detail

      • TempAttributeDescription

        public TempAttributeDescription()
        Konstruktor. Initialisiert _expression und _type mit null.
      • TempAttributeDescription

        public TempAttributeDescription​(ExpressionTree expression,
                                        de.bsvrz.dav.daf.main.config.SystemObject type,
                                        java.lang.String columnName,
                                        java.util.List<java.lang.Class<? extends Aggregation>> aggregations,
                                        java.lang.String name)
        Parameters:
        expression - Zugeordneter Ausdruck.
        type - Typ des temporären Attributs.
        columnName - Spaltenname. Kann null sein.
        aggregations - Zu verwendende Aggregation. Kann null sein.
        name - Name des Attributs. Kann null sein.
      • TempAttributeDescription

        public TempAttributeDescription​(TempAttributeDescription tempAttributeDescription,
                                        java.lang.String columnName)
        Klont die übergebene TempAttributeDescription und verwendet den übergebenen Spaltennamen
        Parameters:
        tempAttributeDescription - Original-Objekt
        columnName - Spaltenname
      • TempAttributeDescription

        public TempAttributeDescription​(java.lang.String attribute,
                                        de.bsvrz.dav.daf.main.config.SystemObject objectType,
                                        antlr.collections.AST ast,
                                        ExpressionTree expression)
      • TempAttributeDescription

        public TempAttributeDescription​(java.lang.String name,
                                        java.lang.String columnName)
    • Method Detail

      • getQualifiers

        public java.util.Collection<Qualifier> getQualifiers()
        Gibt die verwendeten Dataindices zurück. Falls das temporäre Attribut selbst im Ausdruck vorkommt (Rekursion) wird es nicht weiter durchsucht.
        Specified by:
        getQualifiers in class Elements
        Returns:
        Datenindices des AttributeDescription
        See Also:
        Elements.getQualifiers()
      • hashCode

        public int hashCode()
        Der Hashwert des Objekts ist nur abhängig vom Namen.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        Hashwert des Objekts
        See Also:
        Object.hashCode(), AttributeDescription._name
      • toString

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

        public boolean equals​(java.lang.Object obj)
        Prüft auf Gleichheit von AttributeDescription._name.
        Overrides:
        equals in class java.lang.Object
        See Also:
        Object.equals(java.lang.Object)
      • getTempAttributes

        public java.util.HashSet<TempAttributeDescription> getTempAttributes()
        Liefert ein Set mit den temporären Attributen, die dieses temporäre Attribut direkt verwendet. Dazu wird der Ausdruck, der diesem temporären Attribut zugeordnet ist, durchsucht, und die gefundenen temporären Attribute zurückgegeben.
        Returns:
        Temporäre Attribute. Set kann null sein, wenn dem temporären Attribut noch kein Ausdruck zugeordnet wurde.
      • getRealElements

        public java.util.HashSet<RealAttributeDescription> getRealElements()
        Liefert die Menge der referenzierten realen Attribute zurück. Es werden nur direkt referenzierte reale Attribute zurückgegeben. D.h. temporäre Attribute und deren reale Attribute werden nicht zurückgegeben.
        Specified by:
        getRealElements in class Elements
        Returns:
        Menge der realen Elemente.
        See Also:
        Elements.getRealElements()
      • getExpression

        public ExpressionTree getExpression()
        Dem temporären Attribut zugeordneter Ausdruck
        Returns:
        Zugeordneter Ausdruck.
      • setExpression

        public void setExpression​(ExpressionTree expression)
        Setzt den Ausdruck, durch den der Wert des Attributs bestimmt wird.
        Parameters:
        expression - Ausdruck.
      • getValue

        public ExpressionResultAndState getValue​(java.util.Hashtable<RealElement,​BaseDataSet> realElements,
                                                 java.util.Hashtable<TempAttributeDescription,​TempAttribut> tempElements,
                                                 int pseudoObjectIndex)
        Liefert den Wert des temporären Attributs zurück.
        Parameters:
        realElements - Reale Attribute
        tempElements - Temporäre Attribute
        pseudoObjectIndex - PseudoObjectIndex
        Returns:
        Wert des temporären Attributs. null im Fehlerfall.
      • setAST

        public void setAST​(antlr.collections.AST AST)
        Setzt den AST für dieses Element (damit Fehlermeldungen usw. die Zeilennummer erhalten können)
        Parameters:
        AST - AST
      • getAST

        public antlr.collections.AST getAST()
        Gibt den gesetzten AST zurück
        Returns:
        AST
      • getType

        public de.bsvrz.dav.daf.main.config.SystemObject getType()
        Typ des temporären Attributs
        Returns:
        Typ
      • setType

        public void setType​(de.bsvrz.dav.daf.main.config.SystemObject type)
      • setIndex

        public void setIndex​(int index)
        Setzt den Alias-Index
        Parameters:
        index - Alias-Index
      • getIndex

        public int getIndex()
        Gibt den Index des verwendeten Alias an.
        Returns:
        Index des verwendeten Alias-Segments oder -1 falls keine Aliase verwendet werden.