Skip to content

Commit 8f26fea

Browse files
committed
HBX-2789: Review WrapperFactory class and create only new Wrapper intances
- Change the returned classes in some methods of interface 'org.hibernate.tool.orm.jbt.api.wpr.ExporterWrapper' * Method 'getGenericExporter()' returns 'org.hibernate.tool.orm.jbt.api.wpr.GenericExporterWrapper' * Method 'getHbm2DDLExporter()' returns 'org.hibernate.tool.orm.jbt.api.wpr.DdlExporterWrapper' * Method 'getQueryExporter()' returns 'org.hibernate.tool.orm.jbt.api.wpr.QueryExporterWrapper' - Adapt the implementations of class 'org.hibernate.tool.orm.jbt.internal.factory.ExporterWrapperFactory.ExporterWrapperImpl' to the above change - Adapt the affected test methods in test class 'org.hibernate.tool.orm.jbt.api.wpr.ExporterWrapperTest' Signed-off-by: Koen Aers <[email protected]>
1 parent 7f0777e commit 8f26fea

File tree

3 files changed

+18
-15
lines changed

3 files changed

+18
-15
lines changed

jbt/src/main/java/org/hibernate/tool/orm/jbt/api/wrp/ExporterWrapper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ public interface ExporterWrapper extends Wrapper {
1818

1919
Properties getProperties();
2020

21-
ExporterWrapper getGenericExporter();
21+
GenericExporterWrapper getGenericExporter();
2222

23-
ExporterWrapper getHbm2DDLExporter();
23+
DdlExporterWrapper getHbm2DDLExporter();
2424

25-
ExporterWrapper getQueryExporter();
25+
QueryExporterWrapper getQueryExporter();
2626

2727
void setCustomProperties(Properties properties);
2828

jbt/src/main/java/org/hibernate/tool/orm/jbt/internal/factory/ExporterWrapperFactory.java

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,10 @@
1313
import org.hibernate.tool.internal.export.query.QueryExporter;
1414
import org.hibernate.tool.orm.jbt.api.wrp.ArtifactCollectorWrapper;
1515
import org.hibernate.tool.orm.jbt.api.wrp.ConfigurationWrapper;
16+
import org.hibernate.tool.orm.jbt.api.wrp.DdlExporterWrapper;
1617
import org.hibernate.tool.orm.jbt.api.wrp.ExporterWrapper;
18+
import org.hibernate.tool.orm.jbt.api.wrp.GenericExporterWrapper;
19+
import org.hibernate.tool.orm.jbt.api.wrp.QueryExporterWrapper;
1720
import org.hibernate.tool.orm.jbt.internal.wrp.AbstractWrapper;
1821
import org.hibernate.tool.orm.jbt.util.ConfigurationMetadataDescriptor;
1922
import org.hibernate.tool.orm.jbt.util.DummyMetadataDescriptor;
@@ -92,27 +95,27 @@ public Properties getProperties() {
9295
}
9396

9497
@Override
95-
public ExporterWrapper getGenericExporter() {
98+
public GenericExporterWrapper getGenericExporter() {
9699
if (exporter instanceof GenericExporter) {
97-
return this;
100+
return GenericExporterWrapperFactory.createGenericExporterWrapper((GenericExporter)exporter);
98101
} else {
99102
return null;
100103
}
101104
}
102105

103106
@Override
104-
public ExporterWrapper getHbm2DDLExporter() {
107+
public DdlExporterWrapper getHbm2DDLExporter() {
105108
if (exporter instanceof DdlExporter) {
106-
return this;
109+
return DdlExporterWrapperFactory.createDdlExporterWrapper((DdlExporter)exporter);
107110
} else {
108111
return null;
109112
}
110113
}
111114

112115
@Override
113-
public ExporterWrapper getQueryExporter() {
116+
public QueryExporterWrapper getQueryExporter() {
114117
if (exporter instanceof QueryExporter) {
115-
return this;
118+
return QueryExporterWrapperFactory.createQueryExporterWrapper((QueryExporter)exporter);
116119
} else {
117120
return null;
118121
}

jbt/src/test/java/org/hibernate/tool/orm/jbt/api/wrp/ExporterWrapperTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,8 @@ public void testGetGenericExporter() {
129129
assertNull(exporterWrapper.getGenericExporter());
130130
// try now with a GenericExporter
131131
exporterWrapper = ExporterWrapperFactory.createExporterWrapper(GenericExporter.class.getName());
132-
ExporterWrapper genericExporterWrapper = exporterWrapper.getGenericExporter();
133-
assertSame(exporterWrapper, genericExporterWrapper);
132+
GenericExporterWrapper genericExporterWrapper = exporterWrapper.getGenericExporter();
133+
assertSame(exporterWrapper.getWrappedObject(), genericExporterWrapper.getWrappedObject());
134134
}
135135

136136
@Test
@@ -139,8 +139,8 @@ public void testGetHbm2DDlExporter() {
139139
assertNull(exporterWrapper.getHbm2DDLExporter());
140140
// try now with a DdlExporter
141141
exporterWrapper = ExporterWrapperFactory.createExporterWrapper(DdlExporter.class.getName());
142-
ExporterWrapper ddlExporterWrapper = exporterWrapper.getHbm2DDLExporter();
143-
assertSame(exporterWrapper, ddlExporterWrapper);
142+
DdlExporterWrapper ddlExporterWrapper = exporterWrapper.getHbm2DDLExporter();
143+
assertSame(exporterWrapper.getWrappedObject(), ddlExporterWrapper.getWrappedObject());
144144
}
145145

146146
@Test
@@ -149,8 +149,8 @@ public void testGetQueryExporter() {
149149
assertNull(exporterWrapper.getQueryExporter());
150150
// try now with a QueryExporter
151151
exporterWrapper = ExporterWrapperFactory.createExporterWrapper(QueryExporter.class.getName());
152-
ExporterWrapper queryExporterWrapper = exporterWrapper.getQueryExporter();
153-
assertSame(exporterWrapper, queryExporterWrapper);
152+
QueryExporterWrapper queryExporterWrapper = exporterWrapper.getQueryExporter();
153+
assertSame(exporterWrapper.getWrappedObject(), queryExporterWrapper.getWrappedObject());
154154
}
155155

156156
@Test

0 commit comments

Comments
 (0)