From 8cba1c302acc645b638f7bdfe9499e99321806b8 Mon Sep 17 00:00:00 2001 From: guillaume-peoch-sonarsource Date: Tue, 3 Oct 2023 13:52:55 +0200 Subject: [PATCH] SONAR-20541 Update all links that point to www.sonarqube.org to point to www.sonarsource.com/products/sonarqube/ --- README.md | 4 ++-- build.gradle | 4 ++-- .../step/PersistProjectLinksStepIT.java | 22 +++++++++---------- .../HandleUnanalyzedLanguagesStep.java | 2 +- .../HandleUnanalyzedLanguagesStepTest.java | 6 ++--- .../sonar/db/component/ProjectLinkDaoIT.java | 4 ++-- .../db/component/ProjectLinkDtoTest.java | 4 ++-- .../main/js/app/components/FormattingHelp.tsx | 12 ++++++---- .../app/components/GlobalFooterBranding.tsx | 2 +- .../PromotionNotification.tsx | 2 +- .../PromotionNotification-test.tsx.snap | 2 +- .../components/NoWorkersSupportPopup.tsx | 2 +- .../components/SonarLintPromotion.tsx | 2 +- .../embed-docs-modal/EmbedDocsPopup.tsx | 4 ++-- .../issue/components/IssueBadges.tsx | 2 +- .../components/upgrade/SystemUpgradeForm.tsx | 2 +- .../components/upgrade/SystemUpgradeItem.tsx | 2 +- .../SystemUpgradeForm-test.tsx.snap | 10 ++++----- .../SystemUpgradeItem-test.tsx.snap | 12 +++++----- .../setting/ws/example-login-message.json | 2 +- .../setting/ws/LoginMessageActionTest.java | 4 ++-- 21 files changed, 55 insertions(+), 51 deletions(-) diff --git a/README.md b/README.md index c3aa0286c4a..4516fdbd127 100644 --- a/README.md +++ b/README.md @@ -6,8 +6,8 @@ SonarQube provides the capability to not only show the health of an application ## Links -- [Website](https://www.sonarqube.org) -- [Download](https://www.sonarqube.org/downloads/) +- [Website](https://www.sonarsource.com/products/sonarqube) +- [Download](https://www.sonarsource.com/products/sonarqube/downloads) - [Documentation](https://docs.sonarsource.com/sonarqube) - [Twitter](https://twitter.com/SonarQube) - [SonarSource](https://www.sonarsource.com), author of SonarQube diff --git a/build.gradle b/build.gradle index 93ddb002c4a..1ddaaaa19b7 100644 --- a/build.gradle +++ b/build.gradle @@ -625,10 +625,10 @@ subprojects { pom { name = 'SonarQube' description = project.description - url = 'http://www.sonarqube.org/' + url = 'https://www.sonarsource.com/products/sonarqube' organization { name = 'SonarSource' - url = 'http://www.sonarsource.com' + url = 'https://www.sonarsource.com' } licenses { license { diff --git a/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/PersistProjectLinksStepIT.java b/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/PersistProjectLinksStepIT.java index 2b30ff4359a..465e0af6d6d 100644 --- a/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/PersistProjectLinksStepIT.java +++ b/server/sonar-ce-task-projectanalysis/src/it/java/org/sonar/ce/task/projectanalysis/step/PersistProjectLinksStepIT.java @@ -104,7 +104,7 @@ public class PersistProjectLinksStepIT extends BaseStepTest { .setRef(1) .setType(ComponentType.PROJECT) .addChildRef(2) - .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("http://www.sonarqube.org").build()) + .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("https://www.sonarsource.com/products/sonarqube").build()) .addLink(ScannerReport.ComponentLink.newBuilder().setType(SCM).setHref("https://github.com/SonarSource/sonar").build()) .addLink(ScannerReport.ComponentLink.newBuilder().setType(ISSUE).setHref("http://jira.sonarsource.com/").build()) .addLink(ScannerReport.ComponentLink.newBuilder().setType(CI).setHref("http://bamboo.ci.codehaus.org/browse/SONAR").build()) @@ -115,7 +115,7 @@ public class PersistProjectLinksStepIT extends BaseStepTest { assertThat(db.getDbClient().projectLinkDao().selectByProjectUuid(db.getSession(), project.projectUuid())) .extracting(ProjectLinkDto::getType, ProjectLinkDto::getHref, ProjectLinkDto::getName) .containsExactlyInAnyOrder( - tuple("homepage", "http://www.sonarqube.org", null), + tuple("homepage", "https://www.sonarsource.com/products/sonarqube", null), tuple("scm", "https://github.com/SonarSource/sonar", null), tuple("issue", "http://jira.sonarsource.com/", null), tuple("ci", "http://bamboo.ci.codehaus.org/browse/SONAR", null)); @@ -124,21 +124,21 @@ public class PersistProjectLinksStepIT extends BaseStepTest { @Test public void nothing_to_do_when_link_already_exists() { mockBranch(true); - db.projectLinks().insertProvidedLink(project.getProjectDto(), l -> l.setType("homepage").setName("Home").setHref("http://www.sonarqube.org")); + db.projectLinks().insertProvidedLink(project.getProjectDto(), l -> l.setType("homepage").setName("Home").setHref("https://www.sonarsource.com/products/sonarqube")); treeRootHolder.setRoot(ReportComponent.builder(Component.Type.PROJECT, 1).setUuid(project.getMainBranchComponent().uuid()).build()); reportReader.putComponent(ScannerReport.Component.newBuilder() .setRef(1) .setType(ComponentType.PROJECT) - .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("http://www.sonarqube.org").build()) + .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("https://www.sonarsource.com/products/sonarqube").build()) .build()); underTest.execute(new TestComputationStepContext()); assertThat(db.getDbClient().projectLinkDao().selectByProjectUuid(db.getSession(), project.projectUuid())) .extracting(ProjectLinkDto::getType, ProjectLinkDto::getHref) - .containsExactlyInAnyOrder(tuple("homepage", "http://www.sonarqube.org")); + .containsExactlyInAnyOrder(tuple("homepage", "https://www.sonarsource.com/products/sonarqube")); } @Test @@ -153,7 +153,7 @@ public class PersistProjectLinksStepIT extends BaseStepTest { reportReader.putComponent(ScannerReport.Component.newBuilder() .setRef(2) .setType(ComponentType.MODULE) - .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("http://www.sonarqube.org").build()) + .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("https://www.sonarsource.com/products/sonarqube").build()) .build()); underTest.execute(new TestComputationStepContext()); @@ -176,7 +176,7 @@ public class PersistProjectLinksStepIT extends BaseStepTest { reportReader.putComponent(ScannerReport.Component.newBuilder() .setRef(2) .setType(ComponentType.FILE) - .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("http://www.sonarqube.org").build()) + .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("https://www.sonarsource.com/products/sonarqube").build()) .build()); underTest.execute(new TestComputationStepContext()); @@ -193,14 +193,14 @@ public class PersistProjectLinksStepIT extends BaseStepTest { reportReader.putComponent(ScannerReport.Component.newBuilder() .setRef(1) .setType(ComponentType.PROJECT) - .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("http://www.sonarqube.org").build()) + .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("https://www.sonarsource.com/products/sonarqube").build()) .build()); underTest.execute(new TestComputationStepContext()); assertThat(db.getDbClient().projectLinkDao().selectByProjectUuid(db.getSession(), project.getProjectDto().getUuid())) .extracting(ProjectLinkDto::getType, ProjectLinkDto::getHref) - .containsExactlyInAnyOrder(tuple("homepage", "http://www.sonarqube.org")); + .containsExactlyInAnyOrder(tuple("homepage", "https://www.sonarsource.com/products/sonarqube")); } @Test @@ -245,8 +245,8 @@ public class PersistProjectLinksStepIT extends BaseStepTest { reportReader.putComponent(ScannerReport.Component.newBuilder() .setRef(1) .setType(ComponentType.PROJECT) - .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("http://www.sonarqube.org").build()) - .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("http://www.sonarqube.org").build()) + .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("https://www.sonarsource.com/products/sonarqube").build()) + .addLink(ScannerReport.ComponentLink.newBuilder().setType(HOME).setHref("https://www.sonarsource.com/products/sonarqube").build()) .build()); assertThatThrownBy(() -> underTest.execute(new TestComputationStepContext())) diff --git a/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStep.java b/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStep.java index 10959fb405e..1d4ed76db54 100644 --- a/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStep.java +++ b/server/sonar-ce-task-projectanalysis/src/main/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStep.java @@ -52,7 +52,7 @@ public class HandleUnanalyzedLanguagesStep implements ComputationStep { static final String DESCRIPTION = "Check upgrade possibility for not analyzed code files."; private static final String LANGUAGE_UPGRADE_MESSAGE = "%s detected in this project during the last analysis. %s cannot be analyzed with your" + - " current SonarQube edition. Please consider upgrading to" + + " current SonarQube edition. Please consider upgrading to" + " Developer Edition to find Bugs, Code Smells, Vulnerabilities and Security Hotspots in %s."; private final BatchReportReader reportReader; diff --git a/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStepTest.java b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStepTest.java index 1df4d69e30b..d21d658e484 100644 --- a/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStepTest.java +++ b/server/sonar-ce-task-projectanalysis/src/test/java/org/sonar/ce/task/projectanalysis/language/HandleUnanalyzedLanguagesStepTest.java @@ -110,7 +110,7 @@ public class HandleUnanalyzedLanguagesStepTest { .containsExactly(tuple( "10 unanalyzed C, 20 unanalyzed C++ and 1000 unanalyzed SomeLang files were detected in this project during the last analysis. C," + " C++ and SomeLang cannot be analyzed with your current SonarQube edition. Please consider" + - " upgrading to Developer Edition to find Bugs," + + " upgrading to Developer Edition to find Bugs," + " Code Smells, Vulnerabilities and Security Hotspots in these files.", MessageType.SUGGEST_DEVELOPER_EDITION_UPGRADE)); assertThat(measureRepository.getAddedRawMeasure(PROJECT_REF, UNANALYZED_C_KEY).get().getIntValue()).isEqualTo(10); @@ -130,7 +130,7 @@ public class HandleUnanalyzedLanguagesStepTest { List messages = argumentCaptor.getAllValues(); assertThat(messages).extracting(CeTaskMessages.Message::getText).containsExactly( "10 unanalyzed C files were detected in this project during the last analysis. C cannot be analyzed with your current SonarQube edition. Please" + - " consider upgrading to Developer" + + " consider upgrading to Developer" + " Edition to find Bugs, Code Smells, Vulnerabilities and Security Hotspots in this file."); assertThat(measureRepository.getAddedRawMeasure(PROJECT_REF, UNANALYZED_C_KEY).get().getIntValue()).isEqualTo(10); assertThat(measureRepository.getAddedRawMeasure(PROJECT_REF, UNANALYZED_CPP_KEY)).isEmpty(); @@ -149,7 +149,7 @@ public class HandleUnanalyzedLanguagesStepTest { List messages = argumentCaptor.getAllValues(); assertThat(messages).extracting(CeTaskMessages.Message::getText).containsExactly( "1 unanalyzed C++ file was detected in this project during the last analysis. C++ cannot be analyzed with your current SonarQube edition. Please" + - " consider upgrading to Developer" + + " consider upgrading to Developer" + " Edition to find Bugs, Code Smells, Vulnerabilities and Security Hotspots in this file."); assertThat(measureRepository.getAddedRawMeasure(PROJECT_REF, UNANALYZED_CPP_KEY).get().getIntValue()).isOne(); assertThat(measureRepository.getAddedRawMeasure(PROJECT_REF, UNANALYZED_C_KEY)).isEmpty(); diff --git a/server/sonar-db-dao/src/it/java/org/sonar/db/component/ProjectLinkDaoIT.java b/server/sonar-db-dao/src/it/java/org/sonar/db/component/ProjectLinkDaoIT.java index be6a4f493e9..3a1a6ac65cf 100644 --- a/server/sonar-db-dao/src/it/java/org/sonar/db/component/ProjectLinkDaoIT.java +++ b/server/sonar-db-dao/src/it/java/org/sonar/db/component/ProjectLinkDaoIT.java @@ -140,7 +140,7 @@ public class ProjectLinkDaoIT { .setProjectUuid(project2.uuid()) .setType("homepage") .setName("Home") - .setHref("http://www.sonarqube.org")); + .setHref("https://www.sonarsource.com/products/sonarqube")); db.getSession().commit(); ProjectLinkDto reloaded = underTest.selectByUuid(db.getSession(), link.getUuid()); @@ -148,7 +148,7 @@ public class ProjectLinkDaoIT { assertThat(reloaded.getProjectUuid()).isEqualTo(project2.uuid()); assertThat(reloaded.getType()).isEqualTo("homepage"); assertThat(reloaded.getName()).isEqualTo("Home"); - assertThat(reloaded.getHref()).isEqualTo("http://www.sonarqube.org"); + assertThat(reloaded.getHref()).isEqualTo("https://www.sonarsource.com/products/sonarqube"); assertThat(reloaded.getCreatedAt()).isEqualTo(PAST); assertThat(reloaded.getUpdatedAt()).isEqualTo(NOW); } diff --git a/server/sonar-db-dao/src/test/java/org/sonar/db/component/ProjectLinkDtoTest.java b/server/sonar-db-dao/src/test/java/org/sonar/db/component/ProjectLinkDtoTest.java index 6bfe87069ef..80b8e066b7d 100644 --- a/server/sonar-db-dao/src/test/java/org/sonar/db/component/ProjectLinkDtoTest.java +++ b/server/sonar-db-dao/src/test/java/org/sonar/db/component/ProjectLinkDtoTest.java @@ -32,7 +32,7 @@ public class ProjectLinkDtoTest { .setProjectUuid("EFGH") .setType("homepage") .setName("Home") - .setHref("http://www.sonarqube.org") + .setHref("https://www.sonarsource.com/products/sonarqube") .setCreatedAt(1_000_000_000L) .setUpdatedAt(5_000_000_000L); @@ -40,7 +40,7 @@ public class ProjectLinkDtoTest { assertThat(dto.getProjectUuid()).isEqualTo("EFGH"); assertThat(dto.getType()).isEqualTo("homepage"); assertThat(dto.getName()).isEqualTo("Home"); - assertThat(dto.getHref()).isEqualTo("http://www.sonarqube.org"); + assertThat(dto.getHref()).isEqualTo("https://www.sonarsource.com/products/sonarqube"); assertThat(dto.getCreatedAt()).isEqualTo(1_000_000_000L); assertThat(dto.getUpdatedAt()).isEqualTo(5_000_000_000L); } diff --git a/server/sonar-web/src/main/js/app/components/FormattingHelp.tsx b/server/sonar-web/src/main/js/app/components/FormattingHelp.tsx index c0b76ebc373..c287f164513 100644 --- a/server/sonar-web/src/main/js/app/components/FormattingHelp.tsx +++ b/server/sonar-web/src/main/js/app/components/FormattingHelp.tsx @@ -41,15 +41,19 @@ export default function FormattingHelp() { - https://sonarqube.org + https://www.sonarsource.com/products/sonarqube - https://sonarqube.org + + https://www.sonarsource.com/products/sonarqube + - [SonarQube™ Home Page](https://www.sonarqube.org) + + [SonarQube™ Home Page](https://www.sonarsource.com/products/sonarqube) + - SonarQube™ Home Page + SonarQube™ Home Page diff --git a/server/sonar-web/src/main/js/app/components/GlobalFooterBranding.tsx b/server/sonar-web/src/main/js/app/components/GlobalFooterBranding.tsx index 8b59a660c1f..62420c75dcb 100644 --- a/server/sonar-web/src/main/js/app/components/GlobalFooterBranding.tsx +++ b/server/sonar-web/src/main/js/app/components/GlobalFooterBranding.tsx @@ -34,7 +34,7 @@ export default function GlobalFooterBranding() {
This application is based on{' '}

{translate('learn_more')} diff --git a/server/sonar-web/src/main/js/apps/overview/components/SonarLintPromotion.tsx b/server/sonar-web/src/main/js/apps/overview/components/SonarLintPromotion.tsx index c033dab60ee..f411e716812 100644 --- a/server/sonar-web/src/main/js/apps/overview/components/SonarLintPromotion.tsx +++ b/server/sonar-web/src/main/js/apps/overview/components/SonarLintPromotion.tsx @@ -64,7 +64,7 @@ export function SonarLintPromotion({ currentUser, qgConditions }: SonarLintPromo link: ( <> {translate('docs.stay_connected')} SonarLint diff --git a/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeForm.tsx b/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeForm.tsx index 9d492294f46..a2fe996bc49 100644 --- a/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeForm.tsx +++ b/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeForm.tsx @@ -106,7 +106,7 @@ export function SystemUpgradeForm(props: Readonly) {

{translate('system.see_sonarqube_downloads')} diff --git a/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeItem.tsx b/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeItem.tsx index 8266aab2649..d0c277b2fc8 100644 --- a/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeItem.tsx +++ b/server/sonar-web/src/main/js/components/upgrade/SystemUpgradeItem.tsx @@ -60,7 +60,7 @@ export default function SystemUpgradeItem(props: SystemUpgradeItemProps) { {!isPatch && ( {translate('system.see_whats_new')} diff --git a/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeForm-test.tsx.snap b/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeForm-test.tsx.snap index 0600e375945..67963a58a32 100644 --- a/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeForm-test.tsx.snap +++ b/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeForm-test.tsx.snap @@ -82,7 +82,7 @@ exports[`should display correctly for new_minor_version 1`] = ` system.see_sonarqube_downloads @@ -183,7 +183,7 @@ exports[`should display correctly for new_patch 1`] = ` system.see_sonarqube_downloads @@ -284,7 +284,7 @@ exports[`should display correctly for pre_lts 1`] = ` system.see_sonarqube_downloads @@ -385,7 +385,7 @@ exports[`should display correctly for previous_lts 1`] = ` system.see_sonarqube_downloads @@ -480,7 +480,7 @@ exports[`should display correctly for undefined 1`] = ` system.see_sonarqube_downloads diff --git a/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeItem-test.tsx.snap b/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeItem-test.tsx.snap index b9494c41c54..e241e74a664 100644 --- a/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeItem-test.tsx.snap +++ b/server/sonar-web/src/main/js/components/upgrade/__tests__/__snapshots__/SystemUpgradeItem-test.tsx.snap @@ -13,7 +13,7 @@ exports[`should display correctly 1`] = ` system.see_whats_new @@ -112,7 +112,7 @@ exports[`should display correctly 2`] = ` system.see_whats_new @@ -303,7 +303,7 @@ exports[`should display correctly 4`] = ` system.see_whats_new @@ -402,7 +402,7 @@ exports[`should display correctly 5`] = ` system.see_whats_new @@ -501,7 +501,7 @@ exports[`should display correctly 6`] = ` system.see_whats_new @@ -600,7 +600,7 @@ exports[`should display correctly 7`] = ` system.see_whats_new diff --git a/server/sonar-webserver-webapi/src/main/resources/org/sonar/server/setting/ws/example-login-message.json b/server/sonar-webserver-webapi/src/main/resources/org/sonar/server/setting/ws/example-login-message.json index 85e3424fc05..7ab75bcc0b7 100644 --- a/server/sonar-webserver-webapi/src/main/resources/org/sonar/server/setting/ws/example-login-message.json +++ b/server/sonar-webserver-webapi/src/main/resources/org/sonar/server/setting/ws/example-login-message.json @@ -1,3 +1,3 @@ { - "message": "Login message set by admin with a link to [SonarQube Home Page](https://www.sonarqube.org)" + "message": "Login message set by admin with a link to [SonarQube Home Page](https://www.sonarsource.com/products/sonarqube)" } \ No newline at end of file diff --git a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/LoginMessageActionTest.java b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/LoginMessageActionTest.java index 064759532ac..fd7273d5358 100644 --- a/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/LoginMessageActionTest.java +++ b/server/sonar-webserver-webapi/src/test/java/org/sonar/server/setting/ws/LoginMessageActionTest.java @@ -42,8 +42,8 @@ public class LoginMessageActionTest { private final LoginMessageFeature loginMessageFeature = mock(LoginMessageFeature.class); private final LoginMessageAction underTest = new LoginMessageAction(dbClient, loginMessageFeature); private final WsActionTester ws = new WsActionTester(underTest); - private static final String LOGIN_MESSAGE_TEXT = "test link [SonarQube™ Home Page](https://www.sonarqube.org)\n* list 1\n* list 2"; - private static final String FORMATTED_LOGIN_MESSAGE_TEXT = "test link \\u003ca href\\u003d\\\"https://www.sonarqube.org\\\" target\\u003d\\\"_blank\\\" rel\\u003d\\\"noopener noreferrer\\\"\\u003eSonarQube\\u0026trade; Home Page\\u003c/a\\u003e\\u003cbr/\\u003e\\u003cul\\u003e\\u003cli\\u003elist 1\\u003c/li\\u003e\\n\\u003cli\\u003elist 2\\u003c/li\\u003e\\u003c/ul\\u003e"; + private static final String LOGIN_MESSAGE_TEXT = "test link [SonarQube™ Home Page](https://www.sonarsource.com/products/sonarqube)\n* list 1\n* list 2"; + private static final String FORMATTED_LOGIN_MESSAGE_TEXT = "test link \\u003ca href\\u003d\\\"https://www.sonarsource.com/products/sonarqube\\\" target\\u003d\\\"_blank\\\" rel\\u003d\\\"noopener noreferrer\\\"\\u003eSonarQube\\u0026trade; Home Page\\u003c/a\\u003e\\u003cbr/\\u003e\\u003cul\\u003e\\u003cli\\u003elist 1\\u003c/li\\u003e\\n\\u003cli\\u003elist 2\\u003c/li\\u003e\\u003c/ul\\u003e"; private static final String JSON_RESPONSE = "{\"message\":\"" + FORMATTED_LOGIN_MESSAGE_TEXT + "\"}"; private static final String EMPTY_JSON_RESPONSE = "{\"message\":\"\"}"; private PropertiesDao propertiesDao; -- 2.39.5