From a6b41535fb14e5daec4f6823bebe76693e5f6228 Mon Sep 17 00:00:00 2001 From: Francesco Date: Wed, 4 Oct 2023 12:57:16 +0200 Subject: [PATCH] Init in `@PostConstruct` --- .../tech/ailef/dbadmin/external/DbAdmin.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/main/java/tech/ailef/dbadmin/external/DbAdmin.java b/src/main/java/tech/ailef/dbadmin/external/DbAdmin.java index b46f8ba..a93bb61 100644 --- a/src/main/java/tech/ailef/dbadmin/external/DbAdmin.java +++ b/src/main/java/tech/ailef/dbadmin/external/DbAdmin.java @@ -36,6 +36,7 @@ import org.springframework.context.annotation.ClassPathScanningCandidateComponen import org.springframework.core.type.filter.AnnotationTypeFilter; import org.springframework.stereotype.Component; +import jakarta.annotation.PostConstruct; import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.EntityManager; @@ -73,6 +74,8 @@ public class DbAdmin { private List modelsPackage; + private DbAdminProperties properties; + /** * Builds the DbAdmin instance by scanning the `@Entity` beans and loading * the schemas. @@ -82,6 +85,19 @@ public class DbAdmin { public DbAdmin(@Autowired EntityManager entityManager, @Autowired DbAdminProperties properties) { this.modelsPackage = Arrays.stream(properties.getModelsPackage().split(",")).map(String::trim).toList(); this.entityManager = entityManager; + this.properties = properties; + } + + @PostConstruct + private void init() { + // Test different class loaders printing +// try { +// Class klass = Class.forName("modelsPackage"); +// System.out.println("DamEntity class loader: " + klass.getClassLoader()); +// System.out.println("EntityManager class loader: " + entityManager.getClass().getClassLoader()); +// } catch (ClassNotFoundException e) { +// throw new RuntimeException(e); +// } ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider(false); provider.addIncludeFilter(new AnnotationTypeFilter(Entity.class));