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:
  • Field Details

    • DEFAULT_MAX_DISTANCE

      public static final int DEFAULT_MAX_DISTANCE
      Default maximum property distance: 2.
      See Also:
  • Method Details

    • 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 for
      beanClass - 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 for
      beanClass - the bean class to search for matches
      maxDistance - 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 for
      beanClass - 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 for
      beanClass - the bean class to search for matches
      maxDistance - 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)