/*
 * Copyright 2002-2012 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.springframework.validation;

import org.springframework.lang.Nullable;

Strategy interface for building message codes from validation error codes. Used by DataBinder to build the codes list for ObjectErrors and FieldErrors.

The resulting message codes correspond to the codes of a MessageSourceResolvable (as implemented by ObjectError and FieldError).

Author:Juergen Hoeller
See Also:
Since:1.0.1
/** * Strategy interface for building message codes from validation error codes. * Used by DataBinder to build the codes list for ObjectErrors and FieldErrors. * * <p>The resulting message codes correspond to the codes of a * MessageSourceResolvable (as implemented by ObjectError and FieldError). * * @author Juergen Hoeller * @since 1.0.1 * @see DataBinder#setMessageCodesResolver * @see ObjectError * @see FieldError * @see org.springframework.context.MessageSourceResolvable#getCodes() */
public interface MessageCodesResolver {
Build message codes for the given error code and object name. Used for building the codes list of an ObjectError.
Params:
  • errorCode – the error code used for rejecting the object
  • objectName – the name of the object
Returns:the message codes to use
/** * Build message codes for the given error code and object name. * Used for building the codes list of an ObjectError. * @param errorCode the error code used for rejecting the object * @param objectName the name of the object * @return the message codes to use */
String[] resolveMessageCodes(String errorCode, String objectName);
Build message codes for the given error code and field specification. Used for building the codes list of an FieldError.
Params:
  • errorCode – the error code used for rejecting the value
  • objectName – the name of the object
  • field – the field name
  • fieldType – the field type (may be null if not determinable)
Returns:the message codes to use
/** * Build message codes for the given error code and field specification. * Used for building the codes list of an FieldError. * @param errorCode the error code used for rejecting the value * @param objectName the name of the object * @param field the field name * @param fieldType the field type (may be {@code null} if not determinable) * @return the message codes to use */
String[] resolveMessageCodes(String errorCode, String objectName, String field, @Nullable Class<?> fieldType); }