From 900a18be8b07eebec83a0f13e6ff9e6ec3e3ec26 Mon Sep 17 00:00:00 2001 From: Maverick Studer Date: Wed, 3 Apr 2024 09:10:46 +0200 Subject: [PATCH] RED-8702: Explore document databases to store entityLog --- build.gradle.kts | 7 ++++--- .../providers/TenantLiquibaseInitializer.java | 2 -- .../providers/utils/MagicConverter.java | 19 +++++++++++++++++++ 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 93e9683..2e95cab 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -24,16 +24,17 @@ repositories { mavenCentral() } -val springBootVersion = "3.1.2" +val springBootVersion = "3.1.5" +val springCloudVersion = "4.0.4" dependencies { api("com.fasterxml.jackson.core:jackson-databind:2.15.2:") - api("com.knecon.fforesight:tenant-commons:0.21.0") + api("com.knecon.fforesight:tenant-commons:0.23.0") api("com.zaxxer:HikariCP:5.0.1") api("com.google.guava:guava:32.1.2-jre") api("org.liquibase:liquibase-core:4.20.0") api("org.springframework.boot:spring-boot-starter-data-jpa:${springBootVersion}") - api("org.springframework.cloud:spring-cloud-starter-openfeign:4.0.4") + api("org.springframework.cloud:spring-cloud-starter-openfeign:${springCloudVersion}") api("org.springframework.boot:spring-boot-starter-amqp:${springBootVersion}") api("org.postgresql:postgresql:42.6.0") api("org.springframework.boot:spring-boot-configuration-processor:${springBootVersion}") diff --git a/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/TenantLiquibaseInitializer.java b/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/TenantLiquibaseInitializer.java index 99d0e94..564146f 100644 --- a/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/TenantLiquibaseInitializer.java +++ b/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/TenantLiquibaseInitializer.java @@ -9,7 +9,6 @@ import java.util.Set; import javax.sql.DataSource; import org.postgresql.util.PSQLException; -import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Value; @@ -20,7 +19,6 @@ import org.springframework.jdbc.core.StatementCallback; import org.springframework.jdbc.datasource.SingleConnectionDataSource; import org.springframework.stereotype.Service; -import com.knecon.fforesight.databasetenantcommons.providers.events.TenantCreatedEvent; import com.knecon.fforesight.databasetenantcommons.providers.utils.JDBCUtils; import com.knecon.fforesight.tenantcommons.EncryptionDecryptionService; import com.knecon.fforesight.tenantcommons.TenantProvider; diff --git a/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/utils/MagicConverter.java b/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/utils/MagicConverter.java index 9e4165e..c8f737d 100644 --- a/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/utils/MagicConverter.java +++ b/src/main/java/com/knecon/fforesight/databasetenantcommons/providers/utils/MagicConverter.java @@ -122,4 +122,23 @@ public class MagicConverter { } + + public static void copyAllFields(Object source, Object target) { + + var sourceClass = source.getClass(); + var targetClass = target.getClass(); + + var sourceFields = sourceClass.getDeclaredFields(); + + for (var field : sourceFields) { + try { + var targetField = targetClass.getDeclaredField(field.getName()); + field.setAccessible(true); + targetField.setAccessible(true); + targetField.set(target, field.get(source)); + } catch (NoSuchFieldException | IllegalAccessException ignored) { + } + } + } + }