net.sf.javaprinciples.data.transformer.ValidationResult Maven / Gradle / Ivy
package net.sf.javaprinciples.data.transformer;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
/**
* A holder of validation results.
*
* @author Warwick Slade
*/
public class ValidationResult implements Serializable
{
public static final String REQUIRED = "it is missing and is a required attribute";
private static final String FORMAT = "The field %s failed validation because %s.";
private Map fields = new HashMap();
public ValidationResult()
{
}
public ValidationResult(String field, String reason)
{
fields.put(field, reason);
}
public boolean isValid()
{
return fields.isEmpty();
}
public Set getFields()
{
return fields.keySet();
}
public String getReason(String fieldName)
{
return fields.get(fieldName);
}
public String toString()
{
if (isValid())
{
return "";
}
StringBuffer buffer = new StringBuffer();
for (String field : fields.keySet())
{
if (buffer.length() > 0)
{
buffer.append(" ");
}
String reason = fields.get(field);
buffer.append(String.format(FORMAT, field, reason));
}
return buffer.toString();
}
public void add(ValidationResult e)
{
if (fields == null)
{
throw new RuntimeException("You can not modify the ReadOnly VALID Result");
}
fields.putAll(e.fields);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy