This is an automated email from the ASF dual-hosted git repository.
btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git
The following commit(s) were added to refs/heads/master by this push:
new dd228da44d [ENHANCEMENT] Guice extensions: log which component we
failed to load (#2496)
dd228da44d is described below
commit dd228da44d00b2f2641ecbf812585dcd8fb729c3
Author: Benoit TELLIER <[email protected]>
AuthorDate: Mon Nov 18 14:49:13 2024 +0700
[ENHANCEMENT] Guice extensions: log which component we failed to load
(#2496)
---
.../james/modules/mailbox/PreDeletionHookLoaderImplTest.java | 3 ++-
.../src/main/java/org/apache/james/utils/GuiceGenericLoader.java | 8 ++++++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git
a/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
b/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
index 9ee9f191a2..030dfed875 100644
---
a/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
+++
b/server/container/guice/mailbox/src/test/java/org/apache/james/modules/mailbox/PreDeletionHookLoaderImplTest.java
@@ -50,7 +50,8 @@ class PreDeletionHookLoaderImplTest {
@Test
void createHookShouldThrowWhenClassNotFound() {
assertThatThrownBy(() ->
testee.createHook(PreDeletionHookConfiguration.forClass("invalid")))
- .isInstanceOf(ClassNotFoundException.class);
+ .isInstanceOf(RuntimeException.class)
+ .hasMessageContaining("Failed to load invalid");
}
@Test
diff --git
a/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
b/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
index 997059d821..32947a0b3e 100644
---
a/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
+++
b/server/container/guice/utils/src/main/java/org/apache/james/utils/GuiceGenericLoader.java
@@ -53,8 +53,12 @@ public class GuiceGenericLoader {
}
public T instantiate(ClassName className) throws
ClassNotFoundException {
- Class<T> clazz = locateClass(className, namingSheme);
- return injector.getInstance(clazz);
+ try {
+ Class<T> clazz = locateClass(className, namingSheme);
+ return injector.getInstance(clazz);
+ } catch (Exception e) {
+ throw new RuntimeException("Failed to load " +
className.getName(), e);
+ }
}
private Class<T> locateClass(ClassName className, NamingScheme
namingScheme) throws ClassNotFoundException {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]