org.makumba.providers.datadefinition.makumba.validation
Class StringLengthValidationRule

java.lang.Object
  extended by org.makumba.providers.datadefinition.makumba.validation.BasicValidationRule
      extended by org.makumba.providers.datadefinition.makumba.validation.SingleFieldValidationRule
          extended by org.makumba.providers.datadefinition.makumba.validation.RangeValidationRule
              extended by org.makumba.providers.datadefinition.makumba.validation.StringLengthValidationRule
All Implemented Interfaces:
Serializable, Comparable<ValidationRule>, ValidationRule

public class StringLengthValidationRule
extends RangeValidationRule

This validation rule implements string-length checks, using the syntax <fieldname> length in [<lowerCValue>..<upperValue>]. ? is allowed as identifier for unlimted ranges in either range end. This rule can be used both for char and text types.

Version:
$Id: StringLengthValidationRule.java,v 1.1 Sep 17, 2007 12:18:42 AM rudi Exp $
Author:
Rudolf Mayer
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.makumba.providers.datadefinition.makumba.validation.RangeValidationRule
lowerLimit, lowerLimitString, pattern, rule, upperLimit, upperLimitString
 
Fields inherited from class org.makumba.providers.datadefinition.makumba.validation.BasicValidationRule
allowedTypes, errorMessage, fd, fieldDef, fieldFunction, fieldName, lowerFunction, NUMBER_TYPES, operators, rangeDef, rangeValue, ruleName, ruleSyntax, STRING_TYPES, upperFunction
 
Constructor Summary
StringLengthValidationRule(FieldDefinition fd, String fieldName, String ruleName, String errorMessage, String lowerLimitString, String upperLimitString)
           
 
Method Summary
static String getOperator()
           
static void main(String[] args)
          Do some pattern matching tests.
 String toString()
           
 boolean validate(Object value, Transaction t)
          Perform the validation process.
 
Methods inherited from class org.makumba.providers.datadefinition.makumba.validation.RangeValidationRule
getAcceptedRules, getLowerLimit, getLowerLimitString, getMatcher, getUpperLimit, getUpperLimitString, matches
 
Methods inherited from class org.makumba.providers.datadefinition.makumba.validation.SingleFieldValidationRule
checkApplicability, compileRule, throwException
 
Methods inherited from class org.makumba.providers.datadefinition.makumba.validation.BasicValidationRule
applyFunction, compareTo, extractFunctionArgument, extractFunctionNameFromStatement, getAllowedTypes, getDataDefinition, getErrorMessage, getFieldDefinition, getFieldName, getRuleName, getValidationRuleArguments, getValidationRuleOperators, isFunctionCall, isValidFunctionCall
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

StringLengthValidationRule

public StringLengthValidationRule(FieldDefinition fd,
                                  String fieldName,
                                  String ruleName,
                                  String errorMessage,
                                  String lowerLimitString,
                                  String upperLimitString)
Method Detail

getOperator

public static String getOperator()

validate

public boolean validate(Object value,
                        Transaction t)
                 throws InvalidValueException
Description copied from interface: ValidationRule
Perform the validation process.

t - TODO
Throws:
InvalidValueException - if the validation fails

toString

public String toString()
Overrides:
toString in class Object

main

public static void main(String[] args)
Do some pattern matching tests.