From d7affa85618228b821cd9f30184611f126f6e51f Mon Sep 17 00:00:00 2001 From: Jens Schauder Date: Tue, 17 Sep 2024 13:01:10 +0200 Subject: [PATCH] Add database dependencies for Relational. The R2DBC dependencies are only found if they are defined in spring-data-relational, which is done by https://github.com/spring-projects/spring-data-relational/pull/1892 Closes #97 --- .../data/release/infra/Dependencies.java | 16 ++++++++++++++++ .../release/infra/DependencyOperations.java | 4 +++- .../data/release/infra/ProjectDependencies.java | 17 +++++++++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/springframework/data/release/infra/Dependencies.java b/src/main/java/org/springframework/data/release/infra/Dependencies.java index 79a4ab1..c0097a9 100644 --- a/src/main/java/org/springframework/data/release/infra/Dependencies.java +++ b/src/main/java/org/springframework/data/release/infra/Dependencies.java @@ -22,6 +22,7 @@ import org.springframework.util.ReflectionUtils; /** * @author Mark Paluch + * @author Jens Schauder */ public class Dependencies { @@ -134,6 +135,21 @@ public class Dependencies { public static final Dependency MAVEN = Dependency.of("Maven Wrapper", "org.apache.maven:apache-maven"); + public static final Dependency H2 = Dependency.of("H2 Database", "com.h2database:h2"); + public static final Dependency H2_R2DBC = Dependency.of("H2 R2DBC Driver", "io.r2dbc:r2dbc-h2"); + public static final Dependency HSQLDB = Dependency.of("HSQL Database", "org.hsqldb:hsqldb"); + public static final Dependency DB2_JDBC = Dependency.of("DB2 JDBC Driver", "com.ibm.db2:jcc"); + public static final Dependency MARIADB_JDBC = Dependency.of("MariaDB JDBC Driver", "org.mariadb.jdbc:mariadb-java-client"); + public static final Dependency MARIADB_R2DBC = Dependency.of("MariaDB R2DBC Driver", "rg.mariadb:r2dbc-mariadb"); + public static final Dependency MS_SQLSERVER_JDBC = Dependency.of("Microsoft SqlServer JDBC Driver", "com.microsoft.sqlserver:mssql-jdbc"); + public static final Dependency MS_SQLSERVER_R2DBC = Dependency.of("Microsoft SqlServer R2DBC Driver", "io.r2dbc:r2dbc-mssql"); + public static final Dependency MYSQL_JDBC = Dependency.of("MySql JDBC Driver", "mysql:mysql-connector-java"); + public static final Dependency MYSQL_R2DBC = Dependency.of("MySql R2DBC Driver", "io.asyncer:r2dbc-mysql"); + public static final Dependency POSTGRES_JDBC = Dependency.of("Postgres JDBC Driver", "org.postgresql:postgresql"); + public static final Dependency POSTGRES_R2DBC = Dependency.of("Postgres R2DBC Driver", "org.postgresql:r2dbc-postgresql"); + public static final Dependency ORACLE_JDBC = Dependency.of("Oracle JDBC Driver", "com.oracle.database.jdbc:ojdbc11"); + public static final Dependency ORACLE_R2DBC = Dependency.of("Oracle R2DBC Driver", "com.oracle.database.r2dbc:oracle-r2dbc"); + static { ReflectionUtils.doWithFields(Dependencies.class, field -> { diff --git a/src/main/java/org/springframework/data/release/infra/DependencyOperations.java b/src/main/java/org/springframework/data/release/infra/DependencyOperations.java index 88c5e44..d771689 100644 --- a/src/main/java/org/springframework/data/release/infra/DependencyOperations.java +++ b/src/main/java/org/springframework/data/release/infra/DependencyOperations.java @@ -75,6 +75,7 @@ import org.xmlbeam.io.StreamInput; * Operations for dependency management. * * @author Mark Paluch + * @author Jens Schauder */ @Component @RequiredArgsConstructor @@ -476,7 +477,8 @@ public class DependencyOperations { Dependency dependency = projectDependency.getDependency(); if (!(project == Projects.MONGO_DB && projectDependency.getProperty().equals("mongo.reactivestreams") - || project == Projects.NEO4J || project == Projects.BUILD || project == Projects.JPA)) { + || project == Projects.NEO4J || project == Projects.BUILD || project == Projects.JPA + || project == Projects.RELATIONAL)) { if (it.getDependencyVersion(dependency.getArtifactId()) == null && it.getManagedDependency(dependency.getArtifactId()) == null) { diff --git a/src/main/java/org/springframework/data/release/infra/ProjectDependencies.java b/src/main/java/org/springframework/data/release/infra/ProjectDependencies.java index 292b093..7725392 100644 --- a/src/main/java/org/springframework/data/release/infra/ProjectDependencies.java +++ b/src/main/java/org/springframework/data/release/infra/ProjectDependencies.java @@ -31,6 +31,7 @@ import org.springframework.util.MultiValueMap; * Configuration of dependencies for a specific project. * * @author Mark Paluch + * @author Jens Schauder */ public class ProjectDependencies implements Streamable { @@ -99,6 +100,22 @@ public class ProjectDependencies implements Streamable dependencies;