All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sf.xolite.expressions.jaxb_abstr.VariableExpression Maven / Gradle / Ivy

package net.sf.xolite.expressions.jaxb_abstr;


import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;


/**
 * Expression holding a single variable.
 * 
 * @author BEROL
 */
@XmlType(name = "variable")
public class VariableExpression extends BooleanExpression {


    @XmlAttribute
    private String name;


    public VariableExpression() {
    }


    public VariableExpression(String varName) {
        name = varName;
    }


    @Override
    public String toString() {
        return name;
    }


    @Override
    public void validate(ExpressionContext context) {
        if (name == null) throw new IllegalStateException("Variable not defined");
        context.getVariableValue(name);
    }


    @Override
    public boolean evaluate(ExpressionContext context) {
        if (name == null) throw new IllegalStateException("Variable not defined");
        return context.getVariableValue(name);
    }


}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy