From 88dae32a7e93d6e2f674a85e74c34378a419b9f7 Mon Sep 17 00:00:00 2001 From: Neemys <36508659+Neemys@users.noreply.github.com> Date: Fri, 29 Jul 2022 17:22:35 +0200 Subject: [PATCH] Take into account PR comments on `sonarqube-backend` plugin's `router.ts` Simplify some code and change response method call to be `json` instead of plain `send`. Signed-off-by: Neemys <36508659+Neemys@users.noreply.github.com> --- .../sonarqube-backend/src/service/router.ts | 32 +++++++++---------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/plugins/sonarqube-backend/src/service/router.ts b/plugins/sonarqube-backend/src/service/router.ts index c0a9cb88d1..d6f5da7691 100644 --- a/plugins/sonarqube-backend/src/service/router.ts +++ b/plugins/sonarqube-backend/src/service/router.ts @@ -15,13 +15,10 @@ */ import { errorHandler } from '@backstage/backend-common'; -import express, { RequestHandler } from 'express'; +import express from 'express'; import Router from 'express-promise-router'; import { Logger } from 'winston'; -import { - SonarqubeFindings, - SonarqubeInfoProvider, -} from './sonarqubeInfoProvider'; +import { SonarqubeInfoProvider } from './sonarqubeInfoProvider'; import { InputError } from '../../../../packages/errors'; /** @@ -55,9 +52,9 @@ export async function createRouter( const router = Router(); router.use(express.json()); - router.get('/findings', (async (request, response) => { - const componentKey = request.query.componentKey; - let instanceKey = request.query.instanceKey; + router.get('/findings', async (request, response) => { + const componentKey = request.query.componentKey as string; + let instanceKey = request.query.instanceKey as string; if (!componentKey) throw new InputError('ComponentKey must be provided as a single string.'); @@ -73,13 +70,13 @@ export async function createRouter( ); } - response.send( + response.json( await sonarqubeInfoProvider.getFindings(componentKey, instanceKey), ); - }) as RequestHandler); + }); - router.get('/instanceUrl', ((request, response) => { - let requestedInstanceKey = request.query.instanceKey; + router.get('/instanceUrl', (request, response) => { + let requestedInstanceKey = request.query.instanceKey as string; if (requestedInstanceKey) { logger.info( `Retrieving sonarqube instance URL for key ${requestedInstanceKey}`, @@ -90,12 +87,13 @@ export async function createRouter( `Retrieving default sonarqube instance URL as parameter is inexistant, empty or malformed`, ); } - response.send({ - instanceUrl: sonarqubeInfoProvider.getBaseUrl({ - instanceName: requestedInstanceKey, - }).baseUrl, + const { baseUrl } = sonarqubeInfoProvider.getBaseUrl({ + instanceName: requestedInstanceKey, }); - }) as RequestHandler); + response.json({ + instanceUrl: baseUrl, + }); + }); router.use(errorHandler()); return router;