001    package railo.runtime.sql.exp.value;
002    
003    import railo.runtime.op.Caster;
004    import railo.runtime.sql.exp.Literal;
005    
006    
007    public class ValueNumber extends ValueSupport implements Literal {
008    
009            private double value;
010    
011            public ValueNumber(double value) {
012                    super(Caster.toString(value));
013                    this.value=value;
014            }
015            public ValueNumber(double value, String strValue) {
016                    super(strValue);
017                    this.value=value;
018            }
019            public ValueNumber(String strValue) {
020                    super(strValue);
021                    this.value=Caster.toDoubleValue(strValue,0);
022            }
023    
024            @Override
025            public String toString(boolean noAlias) {
026                    if(noAlias || getIndex()==0)return getString();
027                    return getString()+" as "+getAlias();
028            }
029            
030            public Object getValue() {
031                    return Caster.toDouble(value);
032            }
033            
034            public double getValueAsDouble() {
035                    return value;
036            }
037    }