X-Git-Url: https://juplo.de/gitweb/?p=website;a=blobdiff_plain;f=dist%2Fhibernate4-maven-plugin-1.0.5%2Fxref%2Fde%2Fjuplo%2Fplugins%2Fhibernate4%2FValidationConfiguration.html;fp=dist%2Fhibernate4-maven-plugin-1.0.5%2Fxref%2Fde%2Fjuplo%2Fplugins%2Fhibernate4%2FValidationConfiguration.html;h=c64506d2bc17ea04d9d321bfe83ef10e6d3bfb9a;hp=0000000000000000000000000000000000000000;hb=a53595184bd6e57bdc45292cc92c393c4e2dfe6e;hpb=c48c9ee0e9faa89a4c0a5323b367b9f5a6abe602 diff --git a/dist/hibernate4-maven-plugin-1.0.5/xref/de/juplo/plugins/hibernate4/ValidationConfiguration.html b/dist/hibernate4-maven-plugin-1.0.5/xref/de/juplo/plugins/hibernate4/ValidationConfiguration.html new file mode 100644 index 00000000..c64506d2 --- /dev/null +++ b/dist/hibernate4-maven-plugin-1.0.5/xref/de/juplo/plugins/hibernate4/ValidationConfiguration.html @@ -0,0 +1,78 @@ + + + + +ValidationConfiguration xref + + + +
View Javadoc
+
+1   package de.juplo.plugins.hibernate4;
+2   
+3   import javax.validation.Validation;
+4   
+5   import org.hibernate.cfg.Configuration;
+6   import org.hibernate.cfg.beanvalidation.TypeSafeActivatorAccessor;
+7   import org.hibernate.dialect.Dialect;
+8   import org.hibernate.metamodel.source.MappingException;
+9   
+10  
+11  /**
+12   * This integration is usually performed by BeanValidationIntegrator.
+13   * Unfortunately, that integration will only be activated upon
+14   * initialization of the ServiceRegistry, which initializes
+15   * DatasourceConnectionProviderImpl, which looks up the datasource,
+16   * which requires a JNDI context ...
+17   * We therefore reimplement the relevant parts of BeanValidatorIntegrator.
+18   * Since that must occur after secondPassCompile(), which is invoked by
+19   * Configuration.generateSchemaCreationScript, which is invoked by
+20   * SchemaExport, some fancy subclassing is needed to invoke the integration
+21   * at the right time.
+22   * @author Mark Robinson <mark@mrobinson.ca>
+23   * @author Frank Schimmel <frank.schimmel@cm4all.com>
+24   */
+25  public class ValidationConfiguration extends Configuration
+26  {
+27    private static final long serialVersionUID = 1L;
+28  
+29    private Class<Dialect> dialectClass;
+30  
+31    public ValidationConfiguration(final String dialectClass)
+32    {
+33      try {
+34          this.dialectClass = (Class<Dialect>) Class.forName(dialectClass);
+35      } catch (ClassNotFoundException e) {
+36          throw new RuntimeException(e);
+37      }
+38    }
+39  
+40    @Override
+41    protected void secondPassCompile() throws MappingException
+42    {
+43      super.secondPassCompile();
+44  
+45      try
+46      {
+47        TypeSafeActivatorAccessor.applyRelationalConstraints(
+48            Validation.buildDefaultValidatorFactory(),
+49            classes.values(),
+50            getProperties(),
+51            dialectClass.newInstance()
+52            );
+53      }
+54      catch (Exception e)
+55      {
+56        throw new RuntimeException(e);
+57      }
+58    }
+59  
+60    public String getTypeDefs()
+61    {
+62      return typeDefs.entrySet().toString();
+63    }
+64  }
+
+
+ +