Skip to content

Commit eb55c7b

Browse files
committed
HBX-3211: Improve the implementation of some 'api' classes
Signed-off-by: Koen Aers <[email protected]>
1 parent 27660a4 commit eb55c7b

File tree

9 files changed

+316
-305
lines changed

9 files changed

+316
-305
lines changed

orm/src/main/java/org/hibernate/tool/api/export/ExporterFactory.java

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -23,21 +23,22 @@
2323
import org.hibernate.tool.util.ReflectionUtil;
2424

2525
public class ExporterFactory {
26-
27-
public static Exporter createExporter(String exporterClassName) {
28-
Exporter result = null;
29-
try {
30-
Class<?> exporterClass = ReflectionUtil.classForName(exporterClassName);
31-
Constructor<?> exporterConstructor = exporterClass.getConstructor(new Class[] {});
32-
result = (Exporter)exporterConstructor.newInstance();
33-
} catch (ClassNotFoundException | IllegalAccessException | InstantiationException | NoSuchMethodException | SecurityException | IllegalArgumentException | InvocationTargetException exception) {
34-
throw new RuntimeException("An exporter of class '" + exporterClassName + "' could not be created", exception);
35-
}
36-
return result;
37-
}
38-
39-
public static Exporter createExporter(ExporterType exporterType) {
40-
return createExporter(exporterType.className());
41-
}
26+
27+
public static Exporter createExporter(String exporterClassName) {
28+
Exporter result;
29+
try {
30+
Class<?> exporterClass = ReflectionUtil.classForName(exporterClassName);
31+
Constructor<?> exporterConstructor = exporterClass.getConstructor();
32+
result = (Exporter)exporterConstructor.newInstance();
33+
}
34+
catch (ClassNotFoundException | IllegalAccessException | InstantiationException | NoSuchMethodException | SecurityException | IllegalArgumentException | InvocationTargetException exception) {
35+
throw new RuntimeException("An exporter of class '" + exporterClassName + "' could not be created", exception);
36+
}
37+
return result;
38+
}
39+
40+
public static Exporter createExporter(ExporterType exporterType) {
41+
return createExporter(exporterType.className());
42+
}
4243

4344
}

orm/src/main/java/org/hibernate/tool/api/java/DefaultJavaPrettyPrinterStrategy.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -20,23 +20,23 @@
2020
import java.io.File;
2121
import java.io.IOException;
2222
import java.nio.file.Files;
23-
import java.util.Map;
2423

2524
import com.google.googlejavaformat.java.Formatter;
2625
import com.google.googlejavaformat.java.FormatterException;
2726

2827
public class DefaultJavaPrettyPrinterStrategy {
2928

30-
public boolean formatFile(File file) {
31-
try {
32-
Formatter formatter = new Formatter();
33-
String toFormat = new String(Files.readAllBytes(file.toPath()));
34-
String toWrite = formatter.formatSource(toFormat);
35-
Files.write(file.toPath(), toWrite.getBytes());
36-
return true;
37-
} catch (IOException | FormatterException e) {
38-
throw new RuntimeException(e);
39-
}
40-
}
29+
public boolean formatFile(File file) {
30+
try {
31+
Formatter formatter = new Formatter();
32+
String toFormat = new String(Files.readAllBytes(file.toPath()));
33+
String toWrite = formatter.formatSource(toFormat);
34+
Files.write(file.toPath(), toWrite.getBytes());
35+
return true;
36+
}
37+
catch (IOException | FormatterException e) {
38+
throw new RuntimeException(e);
39+
}
40+
}
4141

4242
}

orm/src/main/java/org/hibernate/tool/api/reveng/RevengDialectFactory.java

Lines changed: 74 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -35,78 +35,82 @@
3535
import org.hibernate.tool.internal.reveng.dialect.SQLServerMetaDataDialect;
3636

3737
public class RevengDialectFactory {
38-
39-
private RevengDialectFactory() {}
4038

41-
public static RevengDialect createMetaDataDialect(Dialect dialect, Properties cfg) {
42-
String property = cfg.getProperty( "hibernatetool.metadatadialect" );
43-
RevengDialect mdd = fromClassName(property);
44-
if(mdd==null) {
45-
mdd = fromDialect(dialect);
46-
}
47-
if(mdd==null) {
48-
mdd = fromDialectName(dialect.getClass().getName());
49-
}
50-
if(mdd==null) {
51-
mdd = new JDBCMetaDataDialect();
52-
}
53-
return mdd;
54-
}
39+
private RevengDialectFactory() {}
5540

56-
public static RevengDialect fromClassName(String property) {
57-
if ( property != null ) {
58-
try {
59-
Class<?> revengDialectClass = ReflectHelper.classForName(
60-
property,
61-
RevengDialectFactory.class );
62-
Constructor<?> revengDialectConstructor = revengDialectClass.getConstructor(
63-
new Class[] {});
64-
return (RevengDialect)revengDialectConstructor.newInstance();
65-
}
66-
catch (Throwable e) {
67-
throw new RuntimeException(
68-
"Could not load MetaDataDialect: " + property, e );
69-
}
70-
} else {
71-
return null;
72-
}
73-
}
74-
75-
public static RevengDialect fromDialect(Dialect dialect) {
76-
if(dialect!=null) {
77-
if(dialect instanceof OracleDialect) {
78-
return new OracleMetaDataDialect();
79-
} else if (dialect instanceof H2Dialect) {
80-
return new H2MetaDataDialect();
81-
} else if (dialect instanceof MySQLDialect) {
82-
return new MySQLMetaDataDialect();
83-
} else if (dialect instanceof HSQLDialect) {
84-
return new HSQLMetaDataDialect();
85-
}else if (dialect instanceof SQLServerDialect) {
86-
return new SQLServerMetaDataDialect();
87-
}
88-
}
89-
return null;
90-
}
91-
92-
public static RevengDialect fromDialectName(String dialect) {
93-
if (dialect.toLowerCase().contains("oracle")) {
94-
return new OracleMetaDataDialect();
95-
}
96-
if (dialect.toLowerCase().contains("mysql")) {
97-
return new MySQLMetaDataDialect();
98-
}
99-
if (dialect.toLowerCase().contains("h2")) {
100-
return new H2MetaDataDialect();
101-
}
102-
if (dialect.toLowerCase().contains("hsql")) {
103-
return new HSQLMetaDataDialect();
104-
}
105-
if (dialect.toLowerCase().contains("sqlserver")) {
106-
return new SQLServerMetaDataDialect();
107-
}
108-
return null;
109-
}
41+
public static RevengDialect createMetaDataDialect(Dialect dialect, Properties cfg) {
42+
String property = cfg.getProperty( "hibernatetool.metadatadialect" );
43+
RevengDialect mdd = fromClassName(property);
44+
if(mdd==null) {
45+
mdd = fromDialect(dialect);
46+
}
47+
if(mdd==null) {
48+
mdd = fromDialectName(dialect.getClass().getName());
49+
}
50+
if(mdd==null) {
51+
mdd = new JDBCMetaDataDialect();
52+
}
53+
return mdd;
54+
}
55+
56+
public static RevengDialect fromClassName(String property) {
57+
if ( property != null ) {
58+
try {
59+
Class<?> revengDialectClass = ReflectHelper.classForName(
60+
property,
61+
RevengDialectFactory.class );
62+
Constructor<?> revengDialectConstructor = revengDialectClass.getConstructor();
63+
return (RevengDialect)revengDialectConstructor.newInstance();
64+
}
65+
catch (Throwable e) {
66+
throw new RuntimeException(
67+
"Could not load MetaDataDialect: " + property, e );
68+
}
69+
}
70+
else {
71+
return null;
72+
}
73+
}
74+
75+
public static RevengDialect fromDialect(Dialect dialect) {
76+
if(dialect!=null) {
77+
if(dialect instanceof OracleDialect) {
78+
return new OracleMetaDataDialect();
79+
}
80+
else if (dialect instanceof H2Dialect) {
81+
return new H2MetaDataDialect();
82+
}
83+
else if (dialect instanceof MySQLDialect) {
84+
return new MySQLMetaDataDialect();
85+
}
86+
else if (dialect instanceof HSQLDialect) {
87+
return new HSQLMetaDataDialect();
88+
}
89+
else if (dialect instanceof SQLServerDialect) {
90+
return new SQLServerMetaDataDialect();
91+
}
92+
}
93+
return null;
94+
}
95+
96+
public static RevengDialect fromDialectName(String dialect) {
97+
if (dialect.toLowerCase().contains("oracle")) {
98+
return new OracleMetaDataDialect();
99+
}
100+
if (dialect.toLowerCase().contains("mysql")) {
101+
return new MySQLMetaDataDialect();
102+
}
103+
if (dialect.toLowerCase().contains("h2")) {
104+
return new H2MetaDataDialect();
105+
}
106+
if (dialect.toLowerCase().contains("hsql")) {
107+
return new HSQLMetaDataDialect();
108+
}
109+
if (dialect.toLowerCase().contains("sqlserver")) {
110+
return new SQLServerMetaDataDialect();
111+
}
112+
return null;
113+
}
110114

111115

112116
}

0 commit comments

Comments
 (0)