aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core/src
diff options
context:
space:
mode:
authorDuarte Meneses <duarte.meneses@sonarsource.com>2022-02-02 13:38:24 -0600
committersonartech <sonartech@sonarsource.com>2022-02-03 20:02:50 +0000
commitd0cc88391f1a45ee753f9a93b16f0f4dbe10ce9c (patch)
tree4b549bef696f5b3d8b76c6cc174b820a82e2d055 /sonar-core/src
parent106baf21b44084b5a47e03dd2e8a5c8e2f8ff6fc (diff)
downloadsonarqube-d0cc88391f1a45ee753f9a93b16f0f4dbe10ce9c.tar.gz
sonarqube-d0cc88391f1a45ee753f9a93b16f0f4dbe10ce9c.zip
SONAR-15966 Fix Spring bean names to include classloader
Diffstat (limited to 'sonar-core/src')
-rw-r--r--sonar-core/src/main/java/org/sonar/core/platform/ComponentKeys.java6
-rw-r--r--sonar-core/src/test/java/org/sonar/core/platform/ComponentKeysTest.java11
2 files changed, 13 insertions, 4 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/platform/ComponentKeys.java b/sonar-core/src/main/java/org/sonar/core/platform/ComponentKeys.java
index 81a1b822b9d..59b1ab6bd15 100644
--- a/sonar-core/src/main/java/org/sonar/core/platform/ComponentKeys.java
+++ b/sonar-core/src/main/java/org/sonar/core/platform/ComponentKeys.java
@@ -46,6 +46,10 @@ public class ComponentKeys {
return ofInstance(component, LOG);
}
+ public String ofClass(Class<?> clazz) {
+ return clazz.getClassLoader() + "-" + clazz.getCanonicalName();
+ }
+
String ofInstance(Object component, Logger log) {
String key = component.toString();
if (IDENTITY_HASH_PATTERN.matcher(key).matches()) {
@@ -54,6 +58,6 @@ public class ComponentKeys {
}
key += Uuids.create();
}
- return component.getClass().getCanonicalName() + "-" + key;
+ return ofClass(component.getClass()) + "-" + key;
}
}
diff --git a/sonar-core/src/test/java/org/sonar/core/platform/ComponentKeysTest.java b/sonar-core/src/test/java/org/sonar/core/platform/ComponentKeysTest.java
index 8413cb8ed38..5dd30052181 100644
--- a/sonar-core/src/test/java/org/sonar/core/platform/ComponentKeysTest.java
+++ b/sonar-core/src/test/java/org/sonar/core/platform/ComponentKeysTest.java
@@ -33,13 +33,18 @@ public class ComponentKeysTest {
ComponentKeys keys = new ComponentKeys();
@Test
- public void generate_key_of_class() {
+ public void generate_key_of_object() {
assertThat(keys.of(FakeComponent.class)).isEqualTo(FakeComponent.class);
}
@Test
- public void generate_key_of_object() {
- assertThat(keys.of(new FakeComponent())).isEqualTo("org.sonar.core.platform.ComponentKeysTest.FakeComponent-fake");
+ public void generate_key_of_instance() {
+ assertThat((String) keys.of(new FakeComponent())).endsWith("-org.sonar.core.platform.ComponentKeysTest.FakeComponent-fake");
+ }
+
+ @Test
+ public void generate_key_of_class() {
+ assertThat(keys.ofClass(FakeComponent.class)).endsWith("-org.sonar.core.platform.ComponentKeysTest.FakeComponent");
}
@Test