Whats wrong with doing:
public boolean isValid(Mapping mapping) {
try {
validate(mapping);
} catch (MappingException me) {
return false;
}
return true;
}
?
At least that way you get the added functionality of the validate method and still retain the old functionality...
Its an obvious solution, I know, but anything that gives flexibility and control without cluttering up things or breaking OO principles is probably a good thing I would think...
Perhaps a better approach would be to do something similar to Spring's Validator. At least that way gives you more control over identifying which fields were invalid (if you need that information):
public boolean isValid(Mapping mapping) {
Validator validator = new MappingValidator();
Errors errors = new Errors();
validator.validate(mapping, errors);
//Errors object encapsulates locale specific messages
//and a bunch of other stuff...
if (errors.isEmpty()) {
return true;
} else {
//do other stuff with error info, if needed
//...
return false;
}
}
(of course another approach is to have validate(mapping) return an Errors instance and check for null before processing...
Just thinking out loud...
Les
> -----Original Message-----
> From: Max Rydahl Andersen [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, December 30, 2003 5:18 PM
> To: hibernate-devel
> Subject: [Hibernate] Better validate on property and value ?
>
>
> Hi!
>
> Should we not make a validate(Mapping) on property and value which
> throws appropiate exceptions (especially with a more precise message)
> the the current on in ClassPersister which just call's isValid() and
> assumes it has soemthing to do with number of columns....
>
> Any reasons/arguments against having validate(Mapping) throws
> MappingException instead isValid(Mapping) that just return
> true/false ?
> (we could implement isValid(Mapping) in terms of validate(Mapping).
>
> /max
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by: IBM Linux Tutorials.
> Become an expert in LINUX or just sharpen your skills. Sign
> up for IBM's Free Linux Tutorials. Learn everything from the
> bash shell to sys admin. Click now!
> http://ads.osdn.com/?ad_id=1278&alloc_id=3371> &op=click
>
> _______________________________________________
>
> hibernate-devel mailing list [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/hibernate-devel
>
