async handlePost()

in cloudrun-malware-scanner/server.ts [89:119]


  async handlePost(req: express.Request, res: express.Response): Promise<void> {
    try {
      // eslint-disable-next-line
      const objectKind = req.body?.kind as string | null;
      switch (objectKind) {
        case 'storage#object':
          res.json(
            await this.scanner.handleGcsObject(req.body as StorageObjectData),
          );
          break;

        case 'schedule#cvd_update':
          res.json(await handleCvdUpdate(this.config));
          break;

        default:
          logger.error(
            {payload: req.body as unknown},
            `Error processing request: object kind: ${objectKind} is not supported`,
          );
          res.status(400).json({message: 'invalid request', status: 'error'});
          break;
      }
    } catch (e) {
      logger.error(
        {err: e, payload: req.body as unknown},
        `Failure when processing request: ${e as Error}`,
      );
      res.status(500).json({message: e, status: 'error'});
    }
  }