public class NumericValidator extends BaseValidator implements GracieValidator { public NumericValidator() { } public static final String REGEX_NUMERIC = "^(-?\\d+)(\\.\\d+)?$"; /** * Validation Rule: Only to accept "-, 0-9, ." * @param inputText Input string text * @return boolean Return true when input string is only composed by subtraction sign, decimal point and digits, * otherwise return false. */ public static boolean isNumeric(String inputText) { return RegexValidator.isValid(NumericValidator.REGEX_NUMERIC, inputText); } /** * Validation Rule: Only to accept "-, 0-9, ." * @param inputText Input string text * @param fieldErrorParam Field error tag parameter * @param fieldErrorMessage Field error message * @return boolean Return true when input string is only composed by subtraction sign, decimal point and digits, * otherwise return false. */ public static boolean isNumeric(String inputText, String fieldErrorParam, String fieldErrorMessage) { boolean isValid = NumericValidator.isNumeric(inputText); if (!isValid) { addFieldErrorMessage(fieldErrorParam, fieldErrorMessage); } return isValid; } /** * Validation Rule: Only to accept "-, 0-9, ." * @param inputText Input string text * @param fieldErrorParam Field error tag parameter * @param bundle Language property file id * @param key Message key * @param defaultMessage Default message * @param arguments The arguments of message * @return boolean Return true when input string is only composed by subtraction sign, decimal point and digits, * otherwise return false. */ public static boolean isNumeric(String inputText, String fieldErrorParam, String bundle, String key, String defaultMessage, String[] arguments) { boolean isValid = NumericValidator.isNumeric(inputText); if (!isValid) { String fieldErrorMessage = MessageUtil.getText(bundle, key, defaultMessage, arguments); addFieldErrorMessage(fieldErrorParam, fieldErrorMessage); } return isValid; } public boolean isValid(String inputText, String fieldErrorParam, String bundle, String key, String defaultMessage, String[] arguments) { return NumericValidator.isNumeric(inputText, fieldErrorParam, bundle, key, defaultMessage, arguments); } public boolean isValid(String inputText, String fieldErrorParam, String fieldErrorMessage) { return NumericValidator.isNumeric(inputText, fieldErrorParam, fieldErrorMessage); } public boolean isValid(String inputText) { return NumericValidator.isNumeric(inputText); } public boolean isValid(String inputText, Object[] objs) { return isValid(inputText); } }