jaxx.runtime.validator.BeanValidatorMessage Maven / Gradle / Ivy
/*
* *##%
* JAXX Runtime
* Copyright (C) 2008 - 2009 CodeLutin
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Lesser Public License for more details.
*
* You should have received a copy of the GNU General Lesser Public
* License along with this program. If not, see
* .
* ##%*
*/
package jaxx.runtime.validator;
/**
* The object to box a validation message.
*
* @param type of message (use for override {@link #compareTo(Object)} method.
*
* @author chemit
* @since 1.3
*/
public class BeanValidatorMessage> implements Comparable {
/**
* the validator that produce the message
*/
protected BeanValidator> validator;
/**
* the field that produce the message
*/
protected BeanValidatorField> field;
/**
* the label of the message (to be displayed somewhere)
*/
protected String message;
/**
* the scope of the message
*/
protected BeanValidatorScope scope;
public BeanValidatorMessage(BeanValidator> validator, BeanValidatorField> field, String message, BeanValidatorScope scope) {
this.field = field;
this.validator = validator;
this.message = message;
this.scope = scope;
}
public BeanValidator> getValidator() {
return validator;
}
public BeanValidatorField> getField() {
return field;
}
public BeanValidatorScope getScope() {
return scope;
}
public String getMessage() {
return message;
}
@Override
public int compareTo(E o) {
// sort on scope
int result = getScope().compareTo(o.getScope());
if (result == 0) {
// sort on field name
result = field.getName().compareTo(o.field.getName());
if (result == 0) {
// sort on message
result = message.compareTo(o.message);
}
}
return result;
}
@Override
public String toString() {
return scope + " - " + field.getI18nError(message);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy