1 //$Id: ValidatePreInsertEventListener.java,v 1.1 2005/05/27 08:58:53 epbernard Exp $2 package org.hibernate.validator.event;3 4 import org.hibernate.event.PreInsertEvent;5 import org.hibernate.event.def.DefaultPreInsertEventListener;6 import org.hibernate.validator.ClassValidator;7 import org.hibernate.validator.InvalidStateException;8 import org.hibernate.validator.InvalidValue;9 10 /**11 * Before insert execute the validator framework12 * @author Gavin King13 */14 public class ValidatePreInsertEventListener extends DefaultPreInsertEventListener {15 16 public boolean onPreInsert(PreInsertEvent event) {17 //TODO: cache the validator18 InvalidValue[] invalidValues = new ClassValidator( event.getEntity().getClass() )19 .getInvalidValues( event.getEntity() );20 if (invalidValues.length>0) {21 throw new InvalidStateException(invalidValues);22 }23 return super.onPreInsert( event );24 }25 26 }27