From 5504979ec926b927755a3e4bfd93a406bb4d07b9 Mon Sep 17 00:00:00 2001 From: Kai Moritz <kai@juplo.de> Date: Fri, 2 Jun 2017 10:38:32 +0200 Subject: [PATCH] Upgraded Hibernate * hibernate-core 5.2.4.Final -> 5.2.10.Final * hibernate-validator 5.3.1.Final -> 5.4.1.Final --- pom.xml | 4 +- .../plugins/hibernate/AbstractSchemaMojo.java | 45 +++++++++---------- 2 files changed, 23 insertions(+), 26 deletions(-) diff --git a/pom.xml b/pom.xml index a6521478..c69da308 100644 --- a/pom.xml +++ b/pom.xml @@ -131,8 +131,8 @@ <!-- Zeichensatz --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- Verwendete Versionen --> - <hibernate.version>5.2.4.Final</hibernate.version> - <hibernate-validator.version>5.3.1.Final</hibernate-validator.version> + <hibernate.version>5.2.10.Final</hibernate.version> + <hibernate-validator.version>5.4.1.Final</hibernate-validator.version> <el-api.version>3.0.0</el-api.version> <maven.version>3.3.3</maven.version> <maven-plugin-log4j.version>1.0.1</maven-plugin-log4j.version> diff --git a/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java b/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java index 0f143f59..edf8d125 100644 --- a/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java +++ b/src/main/java/de/juplo/plugins/hibernate/AbstractSchemaMojo.java @@ -490,8 +490,7 @@ public abstract class AbstractSchemaMojo extends AbstractMojo LoadedConfig config = loadConfig(configLoader); if (config != null) properties.putAll(config.getConfigurationValues()); - ParsedPersistenceXmlDescriptor unit = - loadPersistenceUnit(classLoaderService, properties); + ParsedPersistenceXmlDescriptor unit = loadPersistenceUnit(properties); if (unit != null) properties.putAll(unit.getProperties()); @@ -1346,53 +1345,51 @@ public abstract class AbstractSchemaMojo extends AbstractMojo } private ParsedPersistenceXmlDescriptor loadPersistenceUnit( - ClassLoaderService classLoaderService, Properties properties ) throws MojoFailureException { - PersistenceXmlParser parser = - new PersistenceXmlParser( - classLoaderService, - PersistenceUnitTransactionType.RESOURCE_LOCAL - ); - - Map<String, ParsedPersistenceXmlDescriptor> units = - parser.doResolve(properties); + List<ParsedPersistenceXmlDescriptor> units = + PersistenceXmlParser.locatePersistenceUnits(properties); if (persistenceUnit == null) { - Iterator<String> names = units.keySet().iterator(); - if (!names.hasNext()) + if (units.isEmpty()) { getLog().info("Found no META-INF/persistence.xml."); return null; } - String name = names.next(); - if (!names.hasNext()) + if (units.size() == 1) { - getLog().info("Using persistence-unit " + name); - return units.get(name); + ParsedPersistenceXmlDescriptor descriptor = units.get(0); + getLog().info("Using persistence-unit " + descriptor.getName()); + return descriptor; } StringBuilder builder = new StringBuilder(); builder.append("No name provided and multiple persistence units found: "); - builder.append(name); - while(names.hasNext()) + Iterator<ParsedPersistenceXmlDescriptor> it = units.iterator(); + while(it.hasNext()) { - builder.append(", "); - builder.append(names.next()); + builder.append(it.next().getName()); + if (it.hasNext()) + builder.append(", "); } builder.append('.'); throw new MojoFailureException(builder.toString()); } - if (units.containsKey(persistenceUnit)) + Iterator<ParsedPersistenceXmlDescriptor> it = units.iterator(); + while(it.hasNext()) { - getLog().info("Using configured persistence-unit " + persistenceUnit); - return units.get(persistenceUnit); + ParsedPersistenceXmlDescriptor descriptor = it.next(); + if (descriptor.getName().equals(persistenceUnit)) + { + getLog().info("Using configured persistence-unit " + persistenceUnit); + return descriptor; + } } throw new MojoFailureException("Could not find persistence-unit " + persistenceUnit); -- 2.20.1