From b409659e55c6063ca6fc32703d1026ec51cf7754 Mon Sep 17 00:00:00 2001 From: Koen Aers Date: Fri, 28 Nov 2025 14:20:10 +0100 Subject: [PATCH] HBX-3242: Create an exporter type to generate mapping.xml files - Create helper class HbmXmlOrigin and test HbmXmlOriginTest Signed-off-by: Koen Aers --- .../internal/export/mapping/HbmXmlOrigin.java | 25 +++++++++++++++++ .../export/mapping/HbmXmlOriginTest.java | 28 +++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 orm/src/main/java/org/hibernate/tool/internal/export/mapping/HbmXmlOrigin.java create mode 100644 orm/src/test/java/org/hibernate/tool/internal/export/mapping/HbmXmlOriginTest.java diff --git a/orm/src/main/java/org/hibernate/tool/internal/export/mapping/HbmXmlOrigin.java b/orm/src/main/java/org/hibernate/tool/internal/export/mapping/HbmXmlOrigin.java new file mode 100644 index 000000000..a3c755ea7 --- /dev/null +++ b/orm/src/main/java/org/hibernate/tool/internal/export/mapping/HbmXmlOrigin.java @@ -0,0 +1,25 @@ +package org.hibernate.tool.internal.export.mapping; + +import org.hibernate.boot.jaxb.Origin; +import org.hibernate.boot.jaxb.SourceType; + +import java.io.File; +import java.io.Serial; + +public class HbmXmlOrigin extends Origin { + + @Serial + private static final long serialVersionUID = 1L; + + private final File hbmXmlFile; + + public HbmXmlOrigin(File hbmXmlFile) { + super( SourceType.FILE, hbmXmlFile.getAbsolutePath() ); + this.hbmXmlFile = hbmXmlFile; + } + + public File getHbmXmlFile() { + return hbmXmlFile; + } + +} diff --git a/orm/src/test/java/org/hibernate/tool/internal/export/mapping/HbmXmlOriginTest.java b/orm/src/test/java/org/hibernate/tool/internal/export/mapping/HbmXmlOriginTest.java new file mode 100644 index 000000000..58cbab3fd --- /dev/null +++ b/orm/src/test/java/org/hibernate/tool/internal/export/mapping/HbmXmlOriginTest.java @@ -0,0 +1,28 @@ +package org.hibernate.tool.internal.export.mapping; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; + +import java.io.File; +import java.nio.file.Path; + +import org.hibernate.boot.jaxb.SourceType; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.io.TempDir; + +public class HbmXmlOriginTest { + + @TempDir + private Path tempDir; + + @Test + public void testHbmXmlOrigin() throws Exception { + File hbmXmlFile = new File(tempDir.toFile(), "foo.hbm.xml"); + HbmXmlOrigin hxo = new HbmXmlOrigin(hbmXmlFile); + assertNotNull(hxo); + assertEquals(hbmXmlFile, hxo.getHbmXmlFile()); + assertEquals(hbmXmlFile.getAbsolutePath(), hxo.getName()); + assertEquals(SourceType.FILE, hxo.getType()); + } + +}