wicket.markup.html.form.validation
Class PatternValidator

java.lang.Object
  extended bywicket.markup.html.form.validation.AbstractValidator
      extended bywicket.markup.html.form.validation.StringValidator
          extended bywicket.markup.html.form.validation.PatternValidator
All Implemented Interfaces:
IValidator, java.io.Serializable
Direct Known Subclasses:
EmailAddressPatternValidator

public class PatternValidator
extends StringValidator

Validates component by matching the component's value against a regular expression pattern. A PatternValidator can be constructed with either a Java regular expression (compiled or not) or a MetaPattern. If the pattern matches against the value of the component it is attached to when validate() is called by the framework, then that input value is considered valid. If the pattern does not match, the errorMessage() method will be called.

For example, to restrict a field to only digits, you might add a PatternValidator constructed with the pattern "\d+". Another way to do the same thing would be to construct the PatternValidator passing in MetaPattern.DIGITS. The advantages of using MetaPattern over straight Java regular expressions are that the patterns are easier to construct and easier to combine into complex patterns. They are also more readable and more reusable. See MetaPatternfor details.

Author:
Jonathan Locke
See Also:
Pattern, MetaPattern, Serialized Form

Nested Class Summary
 
Nested classes inherited from class wicket.markup.html.form.validation.IValidator
IValidator.NullValidator
 
Field Summary
 
Fields inherited from interface wicket.markup.html.form.validation.IValidator
NULL
 
Constructor Summary
PatternValidator(MetaPattern pattern)
          Constructor.
PatternValidator(java.util.regex.Pattern pattern)
          Constructor.
PatternValidator(java.lang.String pattern)
          Constructor.
PatternValidator(java.lang.String pattern, int flags)
          Constructor.
 
Method Summary
 java.util.regex.Pattern getPattern()
          Gets the regexp pattern.
 void onValidate(java.lang.String value)
          Subclasses should override this method to validate the string value for a component.
 java.lang.String toString()
           
 
Methods inherited from class wicket.markup.html.form.validation.StringValidator
onValidate
 
Methods inherited from class wicket.markup.html.form.validation.AbstractValidator
error, error, error, error, getFormComponent, getInput, messageModel, resourceKey, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PatternValidator

public PatternValidator(java.lang.String pattern)
Constructor.

Parameters:
pattern - Regular expression pattern

PatternValidator

public PatternValidator(java.lang.String pattern,
                        int flags)
Constructor.

Parameters:
pattern - Regular expression pattern
flags - Compile flags for java.util.regex.Pattern

PatternValidator

public PatternValidator(java.util.regex.Pattern pattern)
Constructor.

Parameters:
pattern - Java regex pattern

PatternValidator

public PatternValidator(MetaPattern pattern)
Constructor.

Parameters:
pattern - MetaPattern pattern
Method Detail

onValidate

public void onValidate(java.lang.String value)
Description copied from class: StringValidator
Subclasses should override this method to validate the string value for a component.

Specified by:
onValidate in class StringValidator
Parameters:
value - The string value to validate
See Also:
StringValidator.onValidate(java.lang.String)

getPattern

public final java.util.regex.Pattern getPattern()
Gets the regexp pattern.

Returns:
the regexp pattern

toString

public java.lang.String toString()
See Also:
Object.toString()


Copyright © 2004-2005 Wicket developers. All Rights Reserved.