Newer
Older
RDLCanvas / src / main / java / org / ntlab / rdlcanvas / models / RDLSpecResourceConstant.java
package org.ntlab.rdlcanvas.models;

import models.terms.ResourceConstant;

public class RDLSpecResourceConstant extends ResourceConstant implements Typable, RDLSpecEvaluatableTerm {
    private StructuralType structuralType;
    private ValueType valueType;

    public RDLSpecResourceConstant(String value, ValueType valueType) {
        super(value);
        this.structuralType = StructuralType.primitive;
        this.valueType = valueType;
    }

    @Override
    public StructuralType getStructuralType() {
        return structuralType;
    }

    @Override
    public ValueType getValueType() {
        return valueType;
    }

    @Override
    public boolean isDependencyTerm() {
        return false;
    }

    @Override
    public String toString() {
        if (valueType.getName().equals("string")) {
            return "\"" + getName() + "\"";
        } else {
            return getName();
        }
    }
}