Package org.springframework.beans
Class PropertyMatches
- java.lang.Object
- org.springframework.beans.PropertyMatches
public abstract class PropertyMatches extends Object
Helper class for calculating property matches, according to a configurable distance. Provide the list of potential matches and an easy way to generate an error message. Works for both java bean properties and fields.Mainly for use within the framework and in particular the binding facility.
- Since:
- 2.0
- Author:
- Alef Arendsen, Arjen Poutsma, Juergen Hoeller, Stephane Nicoll
- See Also:
forProperty(String, Class)
,forField(String, Class)
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_MAX_DISTANCE
Default maximum property distance: 2
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
appendHintMessage(StringBuilder msg)
abstract String
buildErrorMessage()
Build an error message for the given invalid property name, indicating the possible property matches.static PropertyMatches
forField(String propertyName, Class<?> beanClass)
Create PropertyMatches for the given field property.static PropertyMatches
forField(String propertyName, Class<?> beanClass, int maxDistance)
Create PropertyMatches for the given field property.static PropertyMatches
forProperty(String propertyName, Class<?> beanClass)
Create PropertyMatches for the given bean property.static PropertyMatches
forProperty(String propertyName, Class<?> beanClass, int maxDistance)
Create PropertyMatches for the given bean property.String[]
getPossibleMatches()
Return the calculated possible matches.String
getPropertyName()
Return the name of the requested property.
Field Detail
DEFAULT_MAX_DISTANCE
public static final int DEFAULT_MAX_DISTANCE
Default maximum property distance: 2- See Also:
- Constant Field Values
Method Detail
forProperty
public static PropertyMatches forProperty(String propertyName, Class<?> beanClass)
Create PropertyMatches for the given bean property.- Parameters:
propertyName
- the name of the property to find possible matches forbeanClass
- the bean class to search for matches
forProperty
public static PropertyMatches forProperty(String propertyName, Class<?> beanClass, int maxDistance)
Create PropertyMatches for the given bean property.- Parameters:
propertyName
- the name of the property to find possible matches forbeanClass
- the bean class to search for matchesmaxDistance
- the maximum property distance allowed for matches
forField
public static PropertyMatches forField(String propertyName, Class<?> beanClass)
Create PropertyMatches for the given field property.- Parameters:
propertyName
- the name of the field to find possible matches forbeanClass
- the bean class to search for matches
forField
public static PropertyMatches forField(String propertyName, Class<?> beanClass, int maxDistance)
Create PropertyMatches for the given field property.- Parameters:
propertyName
- the name of the field to find possible matches forbeanClass
- the bean class to search for matchesmaxDistance
- the maximum property distance allowed for matches
getPropertyName
public String getPropertyName()
Return the name of the requested property.
getPossibleMatches
public String[] getPossibleMatches()
Return the calculated possible matches.
buildErrorMessage
public abstract String buildErrorMessage()
Build an error message for the given invalid property name, indicating the possible property matches.
appendHintMessage
protected void appendHintMessage(StringBuilder msg)