1 /* 2 Copyright (C) 2004 Grid Systems, S.A. 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License, version 2, as 6 published by the Free Software Foundation. 7 8 This program is distributed in the hope that it will be useful, 9 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 GNU General Public License for more details. 12 13 You should have received a copy of the GNU General Public License 14 along with this program; if not, write to the Free Software 15 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 16 */ 17 package com.gridsystems.beanfilter; 18 19 /** 20 * Numeric value. 21 * 22 * @author Rodrigo Ruiz 23 * @version 1.0 24 */ 25 public class NumValue extends EvalValue { 26 /** 27 * The value. 28 */ 29 Number value = null; 30 31 /** 32 * Creates a new instance. 33 * 34 * @param token The token 35 * @param s The numeric value 36 */ 37 public NumValue(Token token, String s) { 38 super(token.beginLine, token.beginColumn); 39 try { 40 this.value = new Long(s); 41 } catch (Exception e) { 42 this.value = new Double(s); 43 } 44 } 45 46 /** 47 * {@inheritDoc} 48 */ 49 @Override public Object getValue(Object src) { 50 return value; 51 } 52 53 /** 54 * {@inheritDoc} 55 */ 56 @Override public String toString() { 57 return value.toString(); 58 } 59 60 /** 61 * {@inheritDoc} 62 */ 63 @Override 64 public Class<?> getClassValue(Class<?> parentClass) throws EvalException { 65 return this.value.getClass(); 66 } 67 }