Package org.apache.commons.validator
Class Field
java.lang.Object
org.apache.commons.validator.Field
- All Implemented Interfaces:
Serializable
,Cloneable
This contains the list of pluggable validators to run on a field and any
message information and variables to perform the validations and generate
error messages. Instances of this class are configured with a
<field> xml element.
The use of FastHashMap is deprecated and will be replaced in a future release.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionHolds Maps of arguments.protected boolean
The flag that indicates whether scripting should be generated by the client for client-side validation.protected String
A comma separated list of validator's this field depends on.protected int
The order of the Field in the Form.protected org.apache.commons.collections.FastHashMap
Deprecated.Subclasses should use getMsgMap() instead.protected org.apache.commons.collections.FastHashMap
Deprecated.Subclasses should use getVarMap() instead.protected String
The Field's indexed list property name.protected String
The Field's indexed property name.protected String
The Field's unique key.protected int
The Page Numberprotected String
The Field's property name.protected static final String
The end of a token.static final String
This indicates an indexed property is being referenced.protected static final String
The start of a token.protected static final String
A Vriable token. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add anArg
to the replacement argument list.void
Add aMsg
to theField
.void
Add aVar
, based on the values passed in, to theField
.void
Add aVar
to theField
.clone()
Creates and returns a copy of this object.void
Generate correctkey
value.getArg
(int position) Gets the defaultArg
object at the given position.Gets theArg
object at the given position.Arg[]
Retrieves the Args for the given validator name.Gets an unmodifiableList
of the dependencies in the same order they were defined in parameter passed to the setDepends() method.Gets the validation rules for this field as a comma separated list.int
Gets the position of theField
in the validation list.Gets the indexed property name of the field.Gets the indexed property name of the field.getKey()
Gets a unique key based on the property and indexedProperty fields.getMessage
(String key) Retrieve a message object.TheField
's messages are returned as an unmodifiableMap
.Retrieve a message value.Returns a Map of String Msg names to Msg objects.int
getPage()
Gets the page value that the Field is associated with for validation.Gets the property name of the field.Retrieve a variable.Returns a Map of String Var names to Var objects.getVars()
TheField
's variables are returned as an unmodifiableMap
.getVarValue
(String mainKey) Retrieve a variable's value.boolean
Determines whether client-side scripting should be generated for this field.boolean
isDependency
(String validatorName) Checks if the validator is listed as a dependency.boolean
If there is a value specified for the indexedProperty field thentrue
will be returned.void
setClientValidation
(boolean clientValidation) Sets the flag that determines whether client-side scripting should be generated for this field.void
setDepends
(String depends) Sets the validation rules for this field as a comma separated list.void
setFieldOrder
(int fieldOrder) Sets the position of theField
in the validation list.void
setIndexedListProperty
(String indexedListProperty) Sets the indexed property name of the field.void
setIndexedProperty
(String indexedProperty) Sets the indexed property name of the field.void
Sets a unique key for the field.void
setPage
(int page) Sets the page value that the Field is associated with for validation.void
setProperty
(String property) Sets the property name of the field.toString()
Returns a string representation of the object.Run the configured validations on this field.
-
Field Details
-
TOKEN_INDEXED
This indicates an indexed property is being referenced.- See Also:
-
TOKEN_START
The start of a token.- See Also:
-
TOKEN_END
The end of a token.- See Also:
-
TOKEN_VAR
A Vriable token.- See Also:
-
property
The Field's property name. -
indexedProperty
The Field's indexed property name. -
indexedListProperty
The Field's indexed list property name. -
key
The Field's unique key. -
depends
A comma separated list of validator's this field depends on. -
page
The Page Number -
clientValidation
The flag that indicates whether scripting should be generated by the client for client-side validation.- Since:
- 1.4
-
fieldOrder
The order of the Field in the Form. -
hVars
Deprecated.Subclasses should use getVarMap() instead. -
hMsgs
Deprecated.Subclasses should use getMsgMap() instead. -
args
Holds Maps of arguments. args[0] returns the Map for the first replacement argument. Start with a 0 length array so that it will only grow to the size of the highest argument position.- Since:
- 1.1
-
-
Constructor Details
-
Field
public Field()
-
-
Method Details
-
addArg
Add anArg
to the replacement argument list.- Parameters:
arg
- Validation message's argument.- Since:
- 1.1
-
addMsg
Add aMsg
to theField
.- Parameters:
msg
- A validation message.
-
addVar
Add aVar
, based on the values passed in, to theField
.- Parameters:
name
- Name of the validation.value
- The Argument's value.jsType
- The JavaScript type.
-
addVar
Add aVar
to theField
.- Parameters:
v
- The Validator Argument.
-
clone
Creates and returns a copy of this object. -
generateKey
Generate correctkey
value. -
getArg
Gets the defaultArg
object at the given position.- Parameters:
position
- Validation message argument's position.- Returns:
- The default Arg or null if not found.
- Since:
- 1.1
-
getArg
Gets theArg
object at the given position. If the key finds anull
value then the default value will be retrieved.- Parameters:
key
- The name the Arg is stored under. If not found, the default Arg for the given position (if any) will be retrieved.position
- The Arg number to find.- Returns:
- The Arg with the given name and position or null if not found.
- Since:
- 1.1
-
getArgs
Retrieves the Args for the given validator name.- Parameters:
key
- The validator's args to retrieve.- Returns:
- An Arg[] sorted by the Args' positions (i.e. the Arg at index 0 has a position of 0).
- Since:
- 1.1.1
-
getDependencyList
Gets an unmodifiableList
of the dependencies in the same order they were defined in parameter passed to the setDepends() method.- Returns:
- A list of the Field's dependancies.
-
getDepends
Gets the validation rules for this field as a comma separated list.- Returns:
- A comma separated list of validator names.
-
getFieldOrder
Gets the position of theField
in the validation list.- Returns:
- The field position.
-
getIndexedListProperty
Gets the indexed property name of the field. This is the method name that will return an array or aCollection
used to retrieve the list and then loop through the list performing the specified validations.- Returns:
- The field's indexed List property name.
-
getIndexedProperty
Gets the indexed property name of the field. This is the method name that can take anint
as a parameter for indexed property value retrieval.- Returns:
- The field's indexed property name.
-
getKey
Gets a unique key based on the property and indexedProperty fields.- Returns:
- a unique key for the field.
-
getMessage
Retrieve a message object.- Parameters:
key
- Validation key.- Returns:
- A validation message for a specified validator.
- Since:
- 1.1.4
-
getMessages
TheField
's messages are returned as an unmodifiableMap
.- Returns:
- Map of validation messages for the field.
- Since:
- 1.1.4
-
getMsg
Retrieve a message value.- Parameters:
key
- Validation key.- Returns:
- A validation message for a specified validator.
-
getMsgMap
Returns a Map of String Msg names to Msg objects.- Returns:
- A Map of the Field's messages.
- Since:
- 1.2.0
-
getPage
Gets the page value that the Field is associated with for validation.- Returns:
- The page number.
-
getProperty
Gets the property name of the field.- Returns:
- The field's property name.
-
getVar
Retrieve a variable.- Parameters:
mainKey
- The Variable's key- Returns:
- the Variable
-
getVarMap
Returns a Map of String Var names to Var objects.- Returns:
- A Map of the Field's variables.
- Since:
- 1.2.0
-
getVars
TheField
's variables are returned as an unmodifiableMap
.- Returns:
- the Map of Variable's for a Field.
-
getVarValue
Retrieve a variable's value.- Parameters:
mainKey
- The Variable's key- Returns:
- the Variable's value
-
isClientValidation
Determines whether client-side scripting should be generated for this field. The default istrue
- Returns:
true
for scripting; otherwise false- Since:
- 1.4
- See Also:
-
isDependency
Checks if the validator is listed as a dependency.- Parameters:
validatorName
- Name of the validator to check.- Returns:
- Whether the field is dependant on a validator.
-
isIndexed
If there is a value specified for the indexedProperty field thentrue
will be returned. Otherwise it will befalse
.- Returns:
- Whether the Field is indexed.
-
setClientValidation
Sets the flag that determines whether client-side scripting should be generated for this field.- Parameters:
clientValidation
- the scripting flag- Since:
- 1.4
- See Also:
-
setDepends
Sets the validation rules for this field as a comma separated list.- Parameters:
depends
- A comma separated list of validator names.
-
setFieldOrder
Sets the position of theField
in the validation list.- Parameters:
fieldOrder
- The field position.
-
setIndexedListProperty
Sets the indexed property name of the field.- Parameters:
indexedListProperty
- The field's indexed List property name.
-
setIndexedProperty
Sets the indexed property name of the field.- Parameters:
indexedProperty
- The field's indexed property name.
-
setKey
Sets a unique key for the field. This can be used to change the key temporarily to have a unique key for an indexed field.- Parameters:
key
- a unique key for the field
-
setPage
Sets the page value that the Field is associated with for validation.- Parameters:
page
- The page number.
-
setProperty
Sets the property name of the field.- Parameters:
property
- The field's property name.
-
toString
Returns a string representation of the object. -
validate
public ValidatorResults validate(Map<String, Object> params, Map<String, throws ValidatorExceptionValidatorAction> actions) Run the configured validations on this field. Run all validations in the depends clause over each item in turn, returning when the first one fails.- Parameters:
params
- A Map of parameter class names to parameter values to pass into validation methods.actions
- A Map of validator names to ValidatorAction objects.- Returns:
- A ValidatorResults object containing validation messages for this field.
- Throws:
ValidatorException
- If an error occurs during validation.
-