X-Git-Url: http://juplo.de/gitweb/?p=hibernate4-maven-plugin;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fplugins%2Fhibernate%2FAbstractSchemaMojo.java;h=ca6b935579280ce35b323d90b83ba0fc42868418;hp=c9ef2c590c5bf35c3673e8d922cb7d43b7032e92;hb=4ab00d5dbf8f4263d867726607ce84d4107ef1c6;hpb=653ab8054c9232471c3c1192d5074010f378a067 diff --git a/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java b/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java index c9ef2c59..ca6b9355 100644 --- a/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java +++ b/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java @@ -12,8 +12,6 @@ import java.net.URL; import java.security.NoSuchAlgorithmException; import java.time.ZonedDateTime; import java.util.Collections; -import java.util.EnumSet; -import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashSet; @@ -49,7 +47,6 @@ import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; import org.hibernate.boot.registry.classloading.spi.ClassLoadingException; import org.hibernate.boot.registry.selector.spi.StrategySelector; import org.hibernate.boot.spi.MetadataImplementor; -import org.hibernate.cfg.AvailableSettings; import static org.hibernate.cfg.AvailableSettings.DIALECT; import static org.hibernate.cfg.AvailableSettings.DRIVER; import static org.hibernate.cfg.AvailableSettings.FORMAT_SQL; @@ -65,18 +62,11 @@ import static org.hibernate.cfg.AvailableSettings.PHYSICAL_NAMING_STRATEGY; import static org.hibernate.cfg.AvailableSettings.SHOW_SQL; import static org.hibernate.cfg.AvailableSettings.USER; import static org.hibernate.cfg.AvailableSettings.URL; -import org.hibernate.engine.config.spi.ConfigurationService; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.internal.util.config.ConfigurationException; import org.hibernate.jpa.boot.internal.ParsedPersistenceXmlDescriptor; import org.hibernate.jpa.boot.internal.PersistenceXmlParser; -import org.hibernate.tool.schema.TargetType; import org.hibernate.tool.schema.internal.ExceptionHandlerCollectingImpl; -import org.hibernate.tool.schema.internal.exec.ScriptTargetOutputToFile; -import org.hibernate.tool.schema.spi.ExecutionOptions; -import org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator; -import org.hibernate.tool.schema.spi.ScriptTargetOutput; -import org.hibernate.tool.schema.spi.TargetDescriptor; import org.scannotation.AnnotationDB; @@ -686,42 +676,6 @@ public abstract class AbstractSchemaMojo extends AbstractMojo ); } - /** Prepare the generation of the SQL */ - Map settings = new HashMap(); - settings.putAll( - serviceRegistry - .getService(ConfigurationService.class) - .getSettings() - ); - ExceptionHandlerCollectingImpl handler = - new ExceptionHandlerCollectingImpl(); - ExecutionOptions options = - SchemaManagementToolCoordinator - .buildExecutionOptions(settings, handler); - final EnumSet targetTypes = EnumSet.of(TargetType.SCRIPT); - if (execute) - targetTypes.add(TargetType.DATABASE); - TargetDescriptor target = new TargetDescriptor() - { - @Override - public EnumSet getTargetTypes() - { - return targetTypes; - } - - @Override - public ScriptTargetOutput getScriptTargetOutput() - { - String charset = - (String) - serviceRegistry - .getService(ConfigurationService.class) - .getSettings() - .get(AvailableSettings.HBM2DDL_CHARSET_NAME); - return new ScriptTargetOutputToFile(output, charset); - } - }; - /** * Change class-loader of current thread. * This is necessary, because still not all parts of Hibernate 5 use @@ -732,7 +686,8 @@ public abstract class AbstractSchemaMojo extends AbstractMojo try { thread.setContextClassLoader(classLoader); - build((MetadataImplementor)metadataBuilder.build(), options, target); + ExceptionHandlerCollectingImpl handler = + build((MetadataImplementor)metadataBuilder.build()); if (handler.getExceptions().size() > 0) { StringBuilder builder = new StringBuilder(); @@ -783,11 +738,7 @@ public abstract class AbstractSchemaMojo extends AbstractMojo } - abstract void build( - MetadataImplementor metadata, - ExecutionOptions options, - TargetDescriptor target - ) + abstract ExceptionHandlerCollectingImpl build(MetadataImplementor metadata) throws MojoFailureException, MojoExecutionException;