diff --git a/addons/scaffolding/plugins/org.obeonetwork.database.doc/doc/ISD - Base de donnees et Scaffolding.textile b/addons/scaffolding/plugins/org.obeonetwork.database.doc/doc/ISD - Base de donnees et Scaffolding.textile index 90e28908be..9864fd9a87 100644 --- a/addons/scaffolding/plugins/org.obeonetwork.database.doc/doc/ISD - Base de donnees et Scaffolding.textile +++ b/addons/scaffolding/plugins/org.obeonetwork.database.doc/doc/ISD - Base de donnees et Scaffolding.textile @@ -34,12 +34,12 @@ h3(#supported_databases). Bases de données supportées Les types de bases de données suivants sont supportés : |_. Base |_. Version |_. Java | -| Oracle |11g à 21c | 8 et 11 | -| MySQL | 5 à 8 | 8 et plus | -| MariaDB | 10.2 à 10.6 | 8, 11 et 17 | +| Oracle |11g à 23ai | 8, 11 et 17 | +| MySQL | 5 à 9.6 | 8 et plus | +| MariaDB | 10.2 à 12.1 | 8, 11 et 17 | | H2 | 1.3 à 1.4.200 | 8 | -| PostgreSQL | 9.5 à 14.3 | 8 et plus | -| SQLServer | 2008 et 2022 | 8, 11, 17 et 18 | +| PostgreSQL | 9.5 à 18.1 | 8 et plus | +| SQLServer | 2008 et 2025 | 8 à 24 | La rétrocompatibilité des drivers permet en théorie d'importer des schéma de base de versions antérieures à celles supportées, mais aucune garantie ne peut être donnée en ce sens. diff --git a/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseImportWizardPage.java b/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseImportWizardPage.java index dfca4a4fae..ed842181ba 100644 --- a/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseImportWizardPage.java +++ b/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseImportWizardPage.java @@ -10,12 +10,12 @@ *******************************************************************************/ package org.obeonetwork.database.ui.wizards.imports; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_13; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_106; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_8; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_24; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_121; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_9; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_ORACLE_21C; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_14; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2008; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_18; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2025; import java.util.ArrayList; import java.util.Arrays; @@ -63,7 +63,7 @@ public class DatabaseImportWizardPage extends WizardPage { private static final String DATABASE_FILE_EXTENSION = "database"; - private static final String[] DB_VENDOR_CHOICES = new String[]{DB_H2_13, DB_MYSQL_8, DB_MARIADB_106, DB_POSTGRES_14, DB_SQLSERVER_2008, DB_ORACLE_21C}; + private static final String[] DB_VENDOR_CHOICES = new String[]{DB_H2_24, DB_MYSQL_9, DB_MARIADB_121, DB_POSTGRES_18, DB_SQLSERVER_2025, DB_ORACLE_21C}; // Model private DatabaseInfos databaseInfos; @@ -167,17 +167,17 @@ public void createControl(Composite parent) { comboDbVendor.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { - txtSchema.setEnabled(!DB_MYSQL_8.equals(comboDbVendor.getText())); - txtSchema.setEnabled(!DB_MARIADB_106.equals(comboDbVendor.getText())); + txtSchema.setEnabled(!DB_MYSQL_9.equals(comboDbVendor.getText())); + txtSchema.setEnabled(!DB_MARIADB_121.equals(comboDbVendor.getText())); - txtHost.setEnabled(!DB_H2_13.equals(comboDbVendor.getText())); - txtPort.setEnabled(!DB_H2_13.equals(comboDbVendor.getText())); + txtHost.setEnabled(!DB_H2_24.equals(comboDbVendor.getText())); + txtPort.setEnabled(!DB_H2_24.equals(comboDbVendor.getText())); } }); - txtSchema.setEnabled(!DB_MYSQL_8.equals(comboDbVendor.getText())); - txtSchema.setEnabled(!DB_MARIADB_106.equals(comboDbVendor.getText())); + txtSchema.setEnabled(!DB_MYSQL_9.equals(comboDbVendor.getText())); + txtSchema.setEnabled(!DB_MARIADB_121.equals(comboDbVendor.getText())); Label lblModelFile = new Label(composite, SWT.NONE); lblModelFile.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1)); @@ -313,8 +313,8 @@ private void initInput() { txtUser.setText(databaseInfos.getUser()); txtPassword.setText(databaseInfos.getPassword()); txtUrl.setText(databaseInfos.getUrl()); - txtSchema.setEnabled(!DB_MYSQL_8.equals(comboDbVendor.getText())); - txtSchema.setEnabled(!DB_MARIADB_106.equals(comboDbVendor.getText())); + txtSchema.setEnabled(!DB_MYSQL_9.equals(comboDbVendor.getText())); + txtSchema.setEnabled(!DB_MARIADB_121.equals(comboDbVendor.getText())); listReferencedModelFiles.setInput(referencedFiles); } diff --git a/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseInfos.java b/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseInfos.java index f2b11b6032..c760ddb1c5 100644 --- a/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseInfos.java +++ b/addons/scaffolding/plugins/org.obeonetwork.database.ui/src/org/obeonetwork/database/ui/wizards/imports/DatabaseInfos.java @@ -10,12 +10,12 @@ *******************************************************************************/ package org.obeonetwork.database.ui.wizards.imports; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_13; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_8; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_106; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_24; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_9; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_121; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_ORACLE_21C; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_14; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2008; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_18; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2025; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeSupport; @@ -31,7 +31,7 @@ public class DatabaseInfos { public static final String PORT_POSTGRES_9 = "5432"; public static final String PORT_SQLSERVER_2008 = "1433"; - private String vendor = DB_MYSQL_8; + private String vendor = DB_MYSQL_9; private String host = ""; private String port = PORT_MYSQL_5; private String database = ""; @@ -64,22 +64,22 @@ public void removePropertyChangeListener(PropertyChangeListener listener) { } public void computeUrl() { - if (DB_MYSQL_8.equals(vendor)) { + if (DB_MYSQL_9.equals(vendor)) { String newUrl = "jdbc:mysql://" + getHost() + ":" + getPort() + "/" + getDatabase(); setUrl(newUrl); - } else if (DB_MARIADB_106.equals(vendor)) { + } else if (DB_MARIADB_121.equals(vendor)) { String newUrl = "jdbc:mariadb://" + getHost() + ":" + getPort() + "/" + getDatabase(); setUrl(newUrl); } else if (DB_ORACLE_21C.equals(vendor)) { String newUrl = "jdbc:oracle:thin:" + getUser() + "/" + getPassword() + "@//" + getHost() + ":" + getPort() + "/" + getDatabase(); setUrl(newUrl); - } else if (DB_H2_13.equals(vendor)) { + } else if (DB_H2_24.equals(vendor)) { String newUrl = "jdbc:h2:" + getDatabase(); setUrl(newUrl); - } else if (DB_POSTGRES_14.equals(vendor)) { + } else if (DB_POSTGRES_18.equals(vendor)) { String newUrl = "jdbc:postgresql://" + getHost() + ":" + getPort() + "/" + getDatabase(); setUrl(newUrl); - } else if (DB_SQLSERVER_2008.equals(vendor)) { + } else if (DB_SQLSERVER_2025.equals(vendor)) { String newUrl = "jdbc:sqlserver://" + getHost() + ":" + getPort() + ";databaseName=" + getDatabase(); setUrl(newUrl); } @@ -94,21 +94,21 @@ public void setVendor(String vendor) { // Value did not change return; } - if (DB_MYSQL_8.equals(vendor) && DB_ORACLE_21C.equals(vendor)) { + if (DB_MYSQL_9.equals(vendor) && DB_ORACLE_21C.equals(vendor)) { // Wrong value return; } - if (DB_MYSQL_8.equals(vendor)) { + if (DB_MYSQL_9.equals(vendor)) { setPort(PORT_MYSQL_5); - } else if (DB_MARIADB_106.equals(vendor)) { + } else if (DB_MARIADB_121.equals(vendor)) { setPort(PORT_MARIADB_102); } else if (DB_ORACLE_21C.equals(vendor)) { setPort(PORT_ORACLE_11G); - } else if (DB_H2_13.equals(vendor)) { + } else if (DB_H2_24.equals(vendor)) { setPort(PORT_H2_13); - } else if (DB_POSTGRES_14.equals(vendor)) { + } else if (DB_POSTGRES_18.equals(vendor)) { setPort(PORT_POSTGRES_9); - } else if (DB_SQLSERVER_2008.equals(vendor)) { + } else if (DB_SQLSERVER_2025.equals(vendor)) { setPort(PORT_SQLSERVER_2008); } propertyChangeSupport.firePropertyChange("vendor", this.vendor, this.vendor = vendor); diff --git a/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/DatabaseModelWizardInitialObjectCreationPage.java b/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/DatabaseModelWizardInitialObjectCreationPage.java index 095d3737b5..632be800b7 100644 --- a/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/DatabaseModelWizardInitialObjectCreationPage.java +++ b/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/DatabaseModelWizardInitialObjectCreationPage.java @@ -10,13 +10,13 @@ *******************************************************************************/ package org.obeonetwork.dsl.database.design.wizards; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_13; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_24; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_LOGICAL_TYPES; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_106; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_8; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_121; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_9; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_ORACLE_21C; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_14; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2008; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_18; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2025; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -215,12 +215,12 @@ protected Collection getDBVendors() { if (dbVendors == null) { dbVendors = new ArrayList(); dbVendors.add(DB_LOGICAL_TYPES); - dbVendors.add(DB_MYSQL_8); - dbVendors.add(DB_MARIADB_106); + dbVendors.add(DB_MYSQL_9); + dbVendors.add(DB_MARIADB_121); dbVendors.add(DB_ORACLE_21C); - dbVendors.add(DB_H2_13); - dbVendors.add(DB_POSTGRES_14); - dbVendors.add(DB_SQLSERVER_2008); + dbVendors.add(DB_H2_24); + dbVendors.add(DB_POSTGRES_18); + dbVendors.add(DB_SQLSERVER_2025); } return dbVendors; } diff --git a/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/NewDatabaseModelWizard.java b/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/NewDatabaseModelWizard.java index 73272cbbc1..7b1931329d 100644 --- a/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/NewDatabaseModelWizard.java +++ b/designs/database/plugins/org.obeonetwork.dsl.database.design/src/org/obeonetwork/dsl/database/design/wizards/NewDatabaseModelWizard.java @@ -11,13 +11,13 @@ package org.obeonetwork.dsl.database.design.wizards; import static org.obeonetwork.dsl.database.design.IDatabaseViewpointConstants.DATABASE_DIAGRAM_ID; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_13; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_24; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_LOGICAL_TYPES; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_106; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_8; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_121; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_9; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_ORACLE_21C; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_14; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2008; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_18; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2025; import static org.obeonetwork.dsl.typeslibrary.util.TypesLibraryUtil.H2_PATHMAP; import static org.obeonetwork.dsl.typeslibrary.util.TypesLibraryUtil.LOGICAL_PATHMAP; import static org.obeonetwork.dsl.typeslibrary.util.TypesLibraryUtil.MARIADB_PATHMAP; @@ -67,22 +67,22 @@ protected Collection createInitialObjects() { Resource typesLibraryResource = null; switch (dbVendor) { - case DB_MYSQL_8: + case DB_MYSQL_9: typesLibraryResource = resourceSet.getResource(URI.createURI(MYSQL_PATHMAP), true); break; - case DB_MARIADB_106: + case DB_MARIADB_121: typesLibraryResource = resourceSet.getResource(URI.createURI(MARIADB_PATHMAP), true); break; case DB_ORACLE_21C: typesLibraryResource = resourceSet.getResource(URI.createURI(ORACLE_PATHMAP), true); break; - case DB_H2_13: + case DB_H2_24: typesLibraryResource = resourceSet.getResource(URI.createURI(H2_PATHMAP), true); break; - case DB_POSTGRES_14: + case DB_POSTGRES_18: typesLibraryResource = resourceSet.getResource(URI.createURI(POSTGRES_PATHMAP), true); break; - case DB_SQLSERVER_2008: + case DB_SQLSERVER_2025: typesLibraryResource = resourceSet.getResource(URI.createURI(SQLSERVER_PATHMAP), true); break; case DB_LOGICAL_TYPES: diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/.classpath b/models/database/plugins/org.obeonetwork.dsl.database.tests/.classpath index 63fa860a2f..09ffec67a6 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/.classpath +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/.classpath @@ -1,8 +1,12 @@ - + + + + + - + @@ -10,5 +14,10 @@ - + + + + + + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/.project b/models/database/plugins/org.obeonetwork.dsl.database.tests/.project index db783785ce..cf603337ec 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/.project +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/.project @@ -20,8 +20,14 @@ + + org.eclipse.m2e.core.maven2Builder + + + + org.eclipse.m2e.core.maven2Nature org.eclipse.pde.PluginNature org.eclipse.jdt.core.javanature diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/.settings/org.eclipse.jdt.core.prefs b/models/database/plugins/org.obeonetwork.dsl.database.tests/.settings/org.eclipse.jdt.core.prefs index 9154beff79..4ede96d8a7 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/.settings/org.eclipse.jdt.core.prefs +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/.settings/org.eclipse.jdt.core.prefs @@ -1,7 +1,2 @@ eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 -org.eclipse.jdt.core.compiler.compliance=17 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=17 +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/.settings/org.eclipse.m2e.core.prefs b/models/database/plugins/org.obeonetwork.dsl.database.tests/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000000..f897a7f1cb --- /dev/null +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/docs/How to execute tests.md b/models/database/plugins/org.obeonetwork.dsl.database.tests/docs/How to execute tests.md index 5dd166599e..1fa3376bcc 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/docs/How to execute tests.md +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/docs/How to execute tests.md @@ -2,14 +2,16 @@ In order to execute tests always in the same context, this document explains how to lauch databases using docker with right parameters. -## Launch database - -I recommend to start one container at once as some container are mapped on the same connection port. - ### Prerequisites You need to install docker first. +## Basic use + +Unit tests include setup phases that already pull, launch and then stop container when needed. Just launch the **DockerTest* to execute the full process. + +## Manual configuration + ### MariaDB #### Installation : diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/pom.xml b/models/database/plugins/org.obeonetwork.dsl.database.tests/pom.xml index 7bbb3ed1c4..b7f08fb1c6 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/pom.xml +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/pom.xml @@ -22,6 +22,8 @@ jar Database Model Reverse + + 17 + - diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.3.176/test.h2.db b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.3.176/test.h2.db index 89e41f3d69..01c6bf14ae 100644 Binary files a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.3.176/test.h2.db and b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.3.176/test.h2.db differ diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.3.176/test.lock.db b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.3.176/test.lock.db new file mode 100644 index 0000000000..454ad6d21c --- /dev/null +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.3.176/test.lock.db @@ -0,0 +1,4 @@ +#FileLock +#Mon Jan 26 14:21:42 UTC 2026 +method=file +id=19bfaae87935ecb7bd4b8eee2cf633ed7dedbc1fc48 diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.196/test.mv.db b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.196/test.mv.db index af52c7e31a..246607caa4 100644 Binary files a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.196/test.mv.db and b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.196/test.mv.db differ diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.197/test.mv.db b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.197/test.mv.db index a484c51482..08af24c35e 100644 Binary files a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.197/test.mv.db and b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.197/test.mv.db differ diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.198/test.mv.db b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.198/test.mv.db index becbc1047e..e3d4f1a3e3 100644 Binary files a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.198/test.mv.db and b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.198/test.mv.db differ diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.199/test.mv.db b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.199/test.mv.db index e565457054..455b7946ef 100644 Binary files a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.199/test.mv.db and b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.199/test.mv.db differ diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.200/test.mv.db b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.200/test.mv.db index 650dc16420..3b51b76258 100644 Binary files a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.200/test.mv.db and b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2-db/thibaultblf_h2_1.4.200/test.mv.db differ diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2_outputRef.database index d0723cd85d..f2a29b8c36 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/h2_outputRef.database @@ -1066,7 +1066,7 @@ - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/mariadb_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/mariadb_outputRef.database index d0f12ab4e6..c548d9f979 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/mariadb_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/mariadb_outputRef.database @@ -665,12 +665,12 @@ - - - + + + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/northwind-liquibase.xml b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/northwind-liquibase.xml index d0ac57694c..b085a0c8d9 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/northwind-liquibase.xml +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/northwind-liquibase.xml @@ -6,8 +6,8 @@ - - + + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/postgres_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/postgres_outputRef.database index d10f152d8c..751b2d4068 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/postgres_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/postgres_outputRef.database @@ -1,6 +1,6 @@ - + @@ -27,164 +27,164 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -195,22 +195,22 @@ - + - + - + - + @@ -234,12 +234,12 @@ - + - + @@ -268,92 +268,92 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -364,12 +364,12 @@ - + - + @@ -404,47 +404,47 @@ - + - + - + - + - + - + - + - + - + @@ -461,37 +461,37 @@ - + - + - + - + - + - + - + @@ -526,52 +526,52 @@ - + - + - + - + - + - + - + - + - + - + @@ -582,12 +582,12 @@ - + - + @@ -631,102 +631,102 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -737,12 +737,12 @@ - + - + @@ -753,12 +753,12 @@ - + - + @@ -769,12 +769,12 @@ - + - + @@ -788,72 +788,72 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -882,42 +882,42 @@ - + - + - + - + - + - + - + - + @@ -928,12 +928,12 @@ - + - + @@ -962,82 +962,82 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1048,27 +1048,27 @@ - + - + - + - + - + @@ -1097,92 +1097,92 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1193,12 +1193,12 @@ - + - + @@ -1227,92 +1227,92 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.3.176/h2_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.3.176/h2_outputRef.database index db9965f555..41b3171281 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.3.176/h2_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.3.176/h2_outputRef.database @@ -1066,7 +1066,7 @@ - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.196/h2_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.196/h2_outputRef.database index 3fa5eda3d3..1246dcbb3c 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.196/h2_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.196/h2_outputRef.database @@ -1066,7 +1066,7 @@ - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.197/h2_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.197/h2_outputRef.database index ba78e02921..673d8258ec 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.197/h2_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.197/h2_outputRef.database @@ -1066,7 +1066,7 @@ - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.198/h2_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.198/h2_outputRef.database index ba78e02921..673d8258ec 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.198/h2_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.198/h2_outputRef.database @@ -1066,7 +1066,7 @@ - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.199/h2_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.199/h2_outputRef.database index ba78e02921..673d8258ec 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.199/h2_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.199/h2_outputRef.database @@ -1066,7 +1066,7 @@ - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.200/h2_outputRef.database b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.200/h2_outputRef.database index ba78e02921..673d8258ec 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.200/h2_outputRef.database +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/resources/thibaultblf_h2_1.4.200/h2_outputRef.database @@ -1066,7 +1066,7 @@ - + diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2DockerTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2DockerTests.java index 0ce8e04b5f..e9e3bd8a82 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2DockerTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2DockerTests.java @@ -83,7 +83,7 @@ public static Collection h2versions() { "thibaultblf/h2:1.4.198", "thibaultblf/h2:1.4.197", "thibaultblf/h2:1.4.196", - "thibaultblf/h2:1.3.176" + "thibaultblf/h2:1.3.176" ); } @@ -98,7 +98,7 @@ public void testImportH2() throws IOException, LiquibaseException { dataSource.setJdbcUsername(H2_USERNAME_DEFAULT); //dataSource.setJdbcUrl("jdbc:h2:tcp://localhost:1521/test"); dataSource.setJdbcUrl(url); - dataSource.setVendor(DatabaseConstants.DB_H2_13); + dataSource.setVendor(DatabaseConstants.DB_H2_24); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); String modelRefURI = "resources/"+containerName+"/h2_outputRef.database"; @@ -117,7 +117,7 @@ public void testImportH2() throws IOException, LiquibaseException { @Before - public void testWithPostgresVersion() { + public void testWithH2Version() { ProcessBuilder builder = new ProcessBuilder(); File localRepo = new File(String.format("%s/%s", H2_PATH_TO_LOCAL_DATABASE, containerName)); diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2Tests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2Tests.java index a81c033928..2bb5374d01 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2Tests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/h2/H2Tests.java @@ -11,11 +11,13 @@ package org.obeonetwork.dsl.database.tests.h2; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.List; import java.util.Optional; import java.util.stream.Collectors; +import org.eclipse.emf.common.util.TreeIterator; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.util.EcoreUtil; import org.junit.BeforeClass; @@ -31,6 +33,7 @@ import org.obeonetwork.dsl.database.spec.DatabaseConstants; import org.obeonetwork.dsl.database.tests.AbstractTests; import org.obeonetwork.dsl.database.tests.utils.TestUtils; +import org.obeonetwork.dsl.environment.ObeoDSMObject; import org.obeonetwork.dsl.typeslibrary.util.TypesLibraryUtil; import liquibase.exception.DatabaseException; @@ -57,7 +60,7 @@ public void testImportH2() { String url = String.format(JDBC_H2_URL_PATTERN, H2_HOST_DEFAULT, H2_PORT_DEFAULT, DATABASE_NAME_DEFAULT); DataSource dataSource = new DataSource(DATABASE_NAME_DEFAULT, "PUBLIC"); dataSource.setJdbcUrl(url); - dataSource.setVendor(DatabaseConstants.DB_H2_13); + dataSource.setVendor(DatabaseConstants.DB_H2_24); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); @@ -87,6 +90,7 @@ public static void prepareH2RefModel(DataBase ref, DataBase database) { String refColumnDefaultValue = column.getDefaultValue(); String refSeqUUID = refColumnDefaultValue.substring("(NEXT VALUE FOR PUBLIC.SYSTEM_SEQUENCE_".length(), refColumnDefaultValue.length() - 2); + // Gets the sequence of the reference database associated with the column. Optional optSeq = allSequences.stream().filter(seq -> seq.getName().contains(refSeqUUID)).findFirst(); if (optSeq.isPresent()) { @@ -104,8 +108,32 @@ public static void prepareH2RefModel(DataBase ref, DataBase database) { column.setDefaultValue(((Column) eColumn).getDefaultValue()); } } + // Cleaning date of creation and modification to compare only content + cleanDate(ref, database); } - + + /** + * Clean every {@link ObeoDSMObject} in the given database of modified and + * creation date + * + * @param ref - database to analyse + * @param database - expected database + */ + private static void cleanDate(DataBase ref, DataBase database) { + for (DataBase aDatabase : Arrays.asList(ref, database)) { + for (TreeIterator iterator = aDatabase.eAllContents(); iterator.hasNext();) { + EObject eObject = (EObject) iterator.next(); + if (eObject instanceof ObeoDSMObject) { + ObeoDSMObject obeoObject = (ObeoDSMObject) eObject; + obeoObject.setCreatedOn(null); + obeoObject.setModifiedOn(null); + } + + } + } + + } + public static Collection getColumnsWithDefaultValueFromDirectTableOfDatabase(DataBase ref) { List columns = ref.getTables().stream() .filter(Table.class::isInstance) diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBDockerTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBDockerTests.java index 69e2975473..d65030a9f4 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBDockerTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBDockerTests.java @@ -60,8 +60,9 @@ public MariaDBDockerTests(String containerImage) { @Parameters( name = "{0}") public static Collection MariaDBVersions() { return Arrays.asList( - "mariadb/server:10.2", - "mariadb:10.6" + "mariadb:10.6", + "mariadb:11.8", + "mariadb:12.1.2" ); } @@ -114,7 +115,7 @@ public void testImportMariaDB() throws LiquibaseException { // Init DB - database = TestUtils.openDatabaseConnection(url, MARIADB_USERNAME_DEFAULT, MARIADB_PASSWORD_DEFAULT); + //database = TestUtils.openDatabaseConnection(url, MARIADB_USERNAME_DEFAULT, MARIADB_PASSWORD_DEFAULT); liquibase = TestUtils.createAndInitializeLiquibase("resources/northwind-liquibase.xml", database); // Run the test @@ -123,7 +124,7 @@ public void testImportMariaDB() throws LiquibaseException { dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(MARIADB_USERNAME_DEFAULT); dataSource.setJdbcPassword(MARIADB_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_MARIADB_106); + dataSource.setVendor(DatabaseConstants.DB_MARIADB_121); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBTests.java index ebcdbd7811..6ecd4e27e9 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mariadb/MariaDBTests.java @@ -126,7 +126,7 @@ public void testImportMariaDB() { dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(MARIADB_USERNAME_DEFAULT); dataSource.setJdbcPassword(MARIADB_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_MARIADB_106); + dataSource.setVendor(DatabaseConstants.DB_MARIADB_121); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerDockerTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerDockerTests.java index 02c24e8ae5..43106bf8dd 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerDockerTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerDockerTests.java @@ -65,7 +65,8 @@ public SqlServerDockerTests(String containerImage) { @Parameters( name = "{0}") public static Collection SqlServerVersions() { return Arrays.asList( - "mcr.microsoft.com/mssql/server:2022-latest" + "mcr.microsoft.com/mssql/server:2022-latest", + "mcr.microsoft.com/mssql/server:2025-latest" ); } @@ -118,7 +119,7 @@ public void testImportMsSQL() throws SQLException, DataSourceException, Interrup dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(MSSQL_USERNAME_DEFAULT); dataSource.setJdbcPassword(MSSQL_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2008); + dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2025); TestUtils.executeStatement(dataSource, String.format(MSSQL_CREATE_DATABASE_STATEMENT, DATABASE_NAME_DEFAULT)); @@ -132,7 +133,7 @@ public void testImportMsSQL() throws SQLException, DataSourceException, Interrup dataSource.setJdbcUrl(databaseUrl); dataSource.setJdbcUsername(MSSQL_USERNAME_DEFAULT); dataSource.setJdbcPassword(MSSQL_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2008); + dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2025); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerTests.java index c54a085649..b72a5bc4d9 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mssql/SqlServerTests.java @@ -52,7 +52,7 @@ public static void setUpBeforeClass() throws DatabaseException, DataSourceExcept dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(MSSQL_USERNAME_DEFAULT); dataSource.setJdbcPassword(MSSQL_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2008); + dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2025); TestUtils.executeStatement(dataSource, String.format(MSSQL_CREATE_DATABASE_STATEMENT, DATABASE_NAME_DEFAULT)); @@ -68,7 +68,7 @@ public void testImportMsSQL() { dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(MSSQL_USERNAME_DEFAULT); dataSource.setJdbcPassword(MSSQL_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2008); + dataSource.setVendor(DatabaseConstants.DB_SQLSERVER_2025); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLDockerTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLDockerTests.java index c7eeb1a06f..fafbbbf69a 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLDockerTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLDockerTests.java @@ -61,7 +61,8 @@ public MySQLDockerTests(String containerImage) { public static Collection MySQLVersions() { return Arrays.asList( "mysql:5.7", - "mysql:8.0.30" + "mysql:8.0.30", + "mysql:9.6.0" ); } @@ -122,7 +123,7 @@ public void testImportMySQL() throws LiquibaseException { dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(MYSQL_USERNAME_DEFAULT); dataSource.setJdbcPassword(MYSQL_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_MYSQL_8); + dataSource.setVendor(DatabaseConstants.DB_MYSQL_9); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLTests.java index a9e7b2b4fe..713c8877fa 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/mysql/MySQLTests.java @@ -141,7 +141,7 @@ public void testImportMySQL() { dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(MYSQL_USERNAME_DEFAULT); dataSource.setJdbcPassword(MYSQL_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_MYSQL_8); + dataSource.setVendor(DatabaseConstants.DB_MYSQL_9); DataBase database = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/oracle/OracleDockerTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/oracle/OracleDockerTests.java index 57fc010960..db70755f7d 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/oracle/OracleDockerTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/oracle/OracleDockerTests.java @@ -76,7 +76,6 @@ public OracleDockerTests(String containerImage) { @Parameters( name = "{0}") public static Collection OracleVersions() { return Arrays.asList( - "oracle/database:11.2.0.2-xe", "container-registry.oracle.com/database/express:21.3.0-xe" ); } diff --git a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/postgres/PostgresDockerTests.java b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/postgres/PostgresDockerTests.java index 6bef2a8745..20f6110993 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/postgres/PostgresDockerTests.java +++ b/models/database/plugins/org.obeonetwork.dsl.database.tests/src/org/obeonetwork/dsl/database/tests/postgres/PostgresDockerTests.java @@ -86,7 +86,8 @@ public static Collection postgreSQLVersions() { "postgres:12.6-alpine", "postgres:12.7-alpine", "postgres:13.2-alpine", - "postgres:14.3-alpine" + "postgres:14.3-alpine", + "postgres:18.1-alpine" ); } @@ -144,7 +145,7 @@ public void testImportPostgres() throws IOException, LiquibaseException { dataSource.setJdbcUrl(url); dataSource.setJdbcUsername(POSTGRES_USERNAME_DEFAULT); dataSource.setJdbcPassword(POSTGRES_PASSWORD_DEFAULT); - dataSource.setVendor(DatabaseConstants.DB_POSTGRES_14); + dataSource.setVendor(DatabaseConstants.DB_POSTGRES_18); DataBase databaseRev = DatabaseReverser.reverse(dataSource, new MultiDataBaseQueries(), null); diff --git a/models/database/plugins/org.obeonetwork.dsl.database/src/org/obeonetwork/dsl/database/spec/DatabaseConstants.java b/models/database/plugins/org.obeonetwork.dsl.database/src/org/obeonetwork/dsl/database/spec/DatabaseConstants.java index 7468e24768..840ce9957b 100644 --- a/models/database/plugins/org.obeonetwork.dsl.database/src/org/obeonetwork/dsl/database/spec/DatabaseConstants.java +++ b/models/database/plugins/org.obeonetwork.dsl.database/src/org/obeonetwork/dsl/database/spec/DatabaseConstants.java @@ -12,11 +12,11 @@ public interface DatabaseConstants { static final String DB_ORACLE_21C = "Oracle-21c"; - static final String DB_MYSQL_8 = "MySQL-8"; - static final String DB_MARIADB_106 = "MariaDB-10.6"; - static final String DB_H2_13 = "H2-1.3-1.4"; - static final String DB_POSTGRES_14 = "PostgreSQL14.3"; - static final String DB_SQLSERVER_2008 = "SQLServer-2008"; + static final String DB_MYSQL_9 = "MySQL-9.6"; + static final String DB_MARIADB_121 = "MariaDB-12.1"; + static final String DB_H2_24 = "H2-2.4"; + static final String DB_POSTGRES_18 = "PostgreSQL18.1"; + static final String DB_SQLSERVER_2025 = "SQLServer-2025"; static final String DB_LOGICAL_TYPES = "Logical Types"; } diff --git a/models/database/plugins/org.obeonetwork.dsl.typeslibrary/plugin.xml b/models/database/plugins/org.obeonetwork.dsl.typeslibrary/plugin.xml index 7cab4d451f..266035a7a8 100644 --- a/models/database/plugins/org.obeonetwork.dsl.typeslibrary/plugin.xml +++ b/models/database/plugins/org.obeonetwork.dsl.typeslibrary/plugin.xml @@ -58,7 +58,7 @@ target="platform:/plugin/org.obeonetwork.dsl.typeslibrary/resources/Postgres-9.typeslibrary"> diff --git a/models/database/plugins/org.obeonetwork.dsl.typeslibrary/src/org/obeonetwork/dsl/typeslibrary/util/TypesLibraryUtil.java b/models/database/plugins/org.obeonetwork.dsl.typeslibrary/src/org/obeonetwork/dsl/typeslibrary/util/TypesLibraryUtil.java index 40ec8bfe32..b52c5d28a7 100644 --- a/models/database/plugins/org.obeonetwork.dsl.typeslibrary/src/org/obeonetwork/dsl/typeslibrary/util/TypesLibraryUtil.java +++ b/models/database/plugins/org.obeonetwork.dsl.typeslibrary/src/org/obeonetwork/dsl/typeslibrary/util/TypesLibraryUtil.java @@ -45,7 +45,7 @@ public class TypesLibraryUtil { public static final String POSTGRES9_PATHMAP = "pathmap://NativeDBTypes/Postgres-9"; public static final String POSTGRES9_FILENAME = "Postgres-9.typeslibrary"; - public static final String POSTGRES_PATHMAP = "pathmap://NativeDBTypes/Postgres-9.5-13"; + public static final String POSTGRES_PATHMAP = "pathmap://NativeDBTypes/Postgres"; public static final String POSTGRES_FILENAME = "Postgres.typeslibrary"; public static NativeType findLogicalType(TypeInstance physicalTypeInstance) { diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/.classpath b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/.classpath index f32b28a478..a491dd7480 100644 --- a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/.classpath +++ b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/.classpath @@ -1,16 +1,16 @@ + + + + + + - - - - - - diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/META-INF/MANIFEST.MF b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/META-INF/MANIFEST.MF index bd724c5d9c..2dd467f716 100644 --- a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/META-INF/MANIFEST.MF +++ b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/META-INF/MANIFEST.MF @@ -6,12 +6,12 @@ Bundle-Version: 5.1.3.qualifier Automatic-Module-Name: org.obeonetwork.dsl.database.drivers Bundle-RequiredExecutionEnvironment: JavaSE-17 Bundle-ClassPath: ., - lib/mariadb-java-client-3.0.7.jar, - lib/mysql-connector-java-8.0.29.jar, - lib/ojdbc8.jar, - lib/mssql-jdbc-11.2.0.jre8.jar, + lib/mariadb-java-client-3.5.7.jar, + lib/mssql-jdbc-13.2.1.jre11.jar, + lib/mysql-connector-j-9.5.0.jar, + lib/postgresql-42.7.9.jar, lib/h2-1.4.200.jar, - lib/postgresql-42.4.0.jar + lib/ojdbc17-23.26.0.0.0.jar Export-Package: com.microsoft.sqlserver.jdbc, com.mysql.jdbc, com.mysql.cj.jdbc, diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/build.properties b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/build.properties index cec409cec8..765e410e52 100644 --- a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/build.properties +++ b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/build.properties @@ -12,9 +12,10 @@ source.. = src/ output.. = bin/ bin.includes = META-INF/,\ .,\ - lib/mariadb-java-client-3.0.7.jar,\ - lib/mysql-connector-java-8.0.29.jar,\ - lib/ojdbc8.jar,\ - lib/mssql-jdbc-11.2.0.jre8.jar,\ + lib/mariadb-java-client-3.5.7.jar,\ + lib/mssql-jdbc-13.2.1.jre11.jar,\ + lib/mysql-connector-j-9.5.0.jar,\ + lib/postgresql-42.7.9.jar,\ + lib/ojdbc8-23.26.0.0.0.jar,\ lib/h2-1.4.200.jar,\ - lib/postgresql-42.4.0.jar + lib/ojdbc17-23.26.0.0.0.jar diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mariadb-java-client-3.0.7.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mariadb-java-client-3.0.7.jar deleted file mode 100644 index 58d75f342b..0000000000 Binary files a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mariadb-java-client-3.0.7.jar and /dev/null differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mariadb-java-client-3.5.7.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mariadb-java-client-3.5.7.jar new file mode 100644 index 0000000000..6fdacfe546 Binary files /dev/null and b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mariadb-java-client-3.5.7.jar differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mssql-jdbc-11.2.0.jre8.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mssql-jdbc-11.2.0.jre8.jar deleted file mode 100644 index 84c7a2df86..0000000000 Binary files a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mssql-jdbc-11.2.0.jre8.jar and /dev/null differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mssql-jdbc-13.2.1.jre11.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mssql-jdbc-13.2.1.jre11.jar new file mode 100644 index 0000000000..5ebcc36d90 Binary files /dev/null and b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mssql-jdbc-13.2.1.jre11.jar differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mysql-connector-j-9.5.0.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mysql-connector-j-9.5.0.jar new file mode 100644 index 0000000000..4b90fff3e7 Binary files /dev/null and b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mysql-connector-j-9.5.0.jar differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mysql-connector-java-8.0.29.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mysql-connector-java-8.0.29.jar deleted file mode 100644 index 5f9f134940..0000000000 Binary files a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/mysql-connector-java-8.0.29.jar and /dev/null differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc17-23.26.0.0.0.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc17-23.26.0.0.0.jar new file mode 100644 index 0000000000..1e4963a017 Binary files /dev/null and b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc17-23.26.0.0.0.jar differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc8-23.26.0.0.0.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc8-23.26.0.0.0.jar new file mode 100644 index 0000000000..f6796c48fa Binary files /dev/null and b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc8-23.26.0.0.0.jar differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc8.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc8.jar deleted file mode 100644 index fe22f60944..0000000000 Binary files a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/ojdbc8.jar and /dev/null differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/postgresql-42.4.0.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/postgresql-42.4.0.jar deleted file mode 100644 index dd6024d8a9..0000000000 Binary files a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/postgresql-42.4.0.jar and /dev/null differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/postgresql-42.7.9.jar b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/postgresql-42.7.9.jar new file mode 100644 index 0000000000..5e357e540d Binary files /dev/null and b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/lib/postgresql-42.7.9.jar differ diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/pom.xml b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/pom.xml index 7c30b7056f..8bac65c237 100644 --- a/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/pom.xml +++ b/reversers/database/plugins/org.obeonetwork.dsl.database.drivers/pom.xml @@ -14,12 +14,12 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 4.0.0 - + org.obeonetwork parent 5.1.3-SNAPSHOT ../../../../releng/org.obeonetwork.informationsystem.parent/pom.xml - + org.obeonetwork org.obeonetwork.dsl.database.drivers @@ -27,4 +27,76 @@ 5.1.3-SNAPSHOT eclipse-plugin Database Model Drivers + + + + + + driver_update + + + + maven-dependency-plugin + + + install + + copy + + + + + com.h2database + h2 + 2.4.240 + true + + + com.h2database + h2 + 1.4.200 + true + + + org.mariadb.jdbc + mariadb-java-client + 3.5.7 + true + + + com.microsoft.sqlserver + mssql-jdbc + 13.2.1.jre11 + true + + + com.mysql + mysql-connector-j + 9.5.0 + true + + + com.oracle.database.jdbc + ojdbc17 + 23.26.0.0.0 + true + + + org.postgresql + postgresql + 42.7.9 + true + + + lib + + + + + + + + + + diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/decoders/impl/MariaDBDatabaseBuilder.java b/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/decoders/impl/MariaDBDatabaseBuilder.java index 1e487bc264..0a8347a92f 100644 --- a/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/decoders/impl/MariaDBDatabaseBuilder.java +++ b/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/decoders/impl/MariaDBDatabaseBuilder.java @@ -10,15 +10,25 @@ *******************************************************************************/ package org.obeonetwork.dsl.database.reverse.decoders.impl; +import java.sql.DatabaseMetaData; +import java.sql.ResultSet; import java.sql.SQLException; +import org.obeonetwork.dsl.database.AbstractTable; +import org.obeonetwork.dsl.database.Table; +import org.obeonetwork.dsl.database.TableContainer; +import org.obeonetwork.dsl.database.View; import org.obeonetwork.dsl.database.reverse.source.DataSource; +import org.obeonetwork.dsl.database.reverse.utils.CreationUtils; import org.obeonetwork.dsl.database.reverse.utils.ProgressListener; import org.obeonetwork.dsl.database.reverse.utils.Queries; +import org.obeonetwork.dsl.typeslibrary.NativeTypesLibrary; import org.obeonetwork.dsl.typeslibrary.util.TypesLibraryUtil; public class MariaDBDatabaseBuilder extends MySQLDataBaseBuilder { + protected String TABLE_ID = "SYSTEM TABLE"; + public MariaDBDatabaseBuilder(DataSource source, ProgressListener progressListener, Queries queries) throws SQLException { super(source, progressListener, queries); @@ -33,5 +43,40 @@ protected String getTypesLibraryUriPathmap() { protected String getTypesLibraryFileName() { return TypesLibraryUtil.MARIADB_FILENAME; } + + @Override + protected void buildTable(ProgressListener progressListener, DatabaseMetaData metaData, + TableContainer owner, NativeTypesLibrary nativeTypesLibrary, + ResultSet rs) throws SQLException { + String tableName = rs.getString(3); + String message = "Discovering table: " + owner.getName() + "."+ tableName; + progressListener.progressTo(1, message); + String tableType = rs.getString(4); + AbstractTable table = null; + + if (!"SYSTEM TABLE".equals(tableType)) { + if ( "TABLE".equals(tableType)) { + table = CreationUtils.createTable(owner, tableName); + } else if ("VIEW".equals(tableType)) { + table = CreationUtils.createView(owner, tableName); + ((View)table).setQuery(getViewQuery(metaData, tableName)); + } + + String tableComments = getRealComments(getTableComments(metaData, rs, + owner.getName(), tableName)); + if (tableComments == null || tableComments.length() == 0) { + table.setComments(null); + } else { + table.setComments(tableComments); + } + + if (table instanceof Table) { + buildColumns(metaData, owner, nativeTypesLibrary, table); + Table t = (Table) table; + buildPrimaryKeys(metaData, t); + buildIndexes(metaData, t); + } + } + } } diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/factories/DataBaseBuilderFactory.java b/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/factories/DataBaseBuilderFactory.java index a66b38ffdd..5e1bdac2ff 100644 --- a/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/factories/DataBaseBuilderFactory.java +++ b/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/factories/DataBaseBuilderFactory.java @@ -24,12 +24,12 @@ import org.obeonetwork.dsl.database.reverse.utils.ProgressListener; import org.obeonetwork.dsl.database.reverse.utils.Queries; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_13; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_8; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_106; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_24; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_9; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_121; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_ORACLE_21C; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_14; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2008; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_18; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2025; public class DataBaseBuilderFactory { @@ -40,17 +40,17 @@ public DataBaseBuilderFactory(DataSource dataSource) { } public DataBaseBuilder createDataBaseBuilder(Queries queries, ProgressListener progressListener) throws SQLException { - if(DB_MYSQL_8.equals(dataSource.getVendor())){ + if(DB_MYSQL_9.equals(dataSource.getVendor())){ return new MySQLDataBaseBuilder(dataSource, progressListener, queries); - } else if (DB_MARIADB_106.equals(dataSource.getVendor())) { + } else if (DB_MARIADB_121.equals(dataSource.getVendor())) { return new MariaDBDatabaseBuilder(dataSource, progressListener, queries); } else if(DB_ORACLE_21C.equals(dataSource.getVendor())){ return new OracleDataBaseBuilder(dataSource, progressListener, queries); - } else if(DB_H2_13.equals(dataSource.getVendor())){ + } else if(DB_H2_24.equals(dataSource.getVendor())){ return new H2DataBaseBuilder(dataSource, progressListener, queries); - } else if(DB_POSTGRES_14.equals(dataSource.getVendor())){ + } else if(DB_POSTGRES_18.equals(dataSource.getVendor())){ return new PostGresDataBaseBuilder(dataSource, progressListener, queries); - } else if(DB_SQLSERVER_2008.equals(dataSource.getVendor())){ + } else if(DB_SQLSERVER_2025.equals(dataSource.getVendor())){ return new SQLServerDataBaseBuilder(dataSource, progressListener, queries); } else { return new DefaultDataBaseBuilder(dataSource, progressListener, queries); diff --git a/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/source/DataSource.java b/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/source/DataSource.java index 277c58dcda..2cb1bfdc32 100644 --- a/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/source/DataSource.java +++ b/reversers/database/plugins/org.obeonetwork.dsl.database.reverse/src/org/obeonetwork/dsl/database/reverse/source/DataSource.java @@ -10,12 +10,12 @@ *******************************************************************************/ package org.obeonetwork.dsl.database.reverse.source; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_13; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_8; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_106; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_H2_24; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MYSQL_9; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_MARIADB_121; import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_ORACLE_21C; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_14; -import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2008; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_POSTGRES_18; +import static org.obeonetwork.dsl.database.spec.DatabaseConstants.DB_SQLSERVER_2025; import java.sql.Connection; import java.sql.DriverManager; @@ -51,12 +51,12 @@ public DataSource(String databaseName, String schemaName) { private Map getJdbcDrivers() { if (jdbcDrivers == null) { jdbcDrivers = new HashMap(); - jdbcDrivers.put(DB_MYSQL_8, JDBC_MYSQL_DRIVER); - jdbcDrivers.put(DB_MARIADB_106, JDBC_MARIADB_DRIVER); + jdbcDrivers.put(DB_MYSQL_9, JDBC_MYSQL_DRIVER); + jdbcDrivers.put(DB_MARIADB_121, JDBC_MARIADB_DRIVER); jdbcDrivers.put(DB_ORACLE_21C, JDBC_ORACLE_DRIVER); - jdbcDrivers.put(DB_H2_13, JDBC_H2_DRIVER); - jdbcDrivers.put(DB_POSTGRES_14, JDBC_POSTGRES_DRIVER); - jdbcDrivers.put(DB_SQLSERVER_2008, JDBC_SQLSERVER_DRIVER); + jdbcDrivers.put(DB_H2_24, JDBC_H2_DRIVER); + jdbcDrivers.put(DB_POSTGRES_18, JDBC_POSTGRES_DRIVER); + jdbcDrivers.put(DB_SQLSERVER_2025, JDBC_SQLSERVER_DRIVER); } return jdbcDrivers; }