From f083820765d0d171453561235047f1e8a7536754 Mon Sep 17 00:00:00 2001 From: Katerina Date: Fri, 17 May 2024 12:55:02 +0300 Subject: [PATCH] Check Certificate on Controller and save the error in tha bd --- .../controllers/ValidationController.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/main/java/eu/dnetlib/validatorapi/controllers/ValidationController.java b/src/main/java/eu/dnetlib/validatorapi/controllers/ValidationController.java index a43f62b..95ea05d 100644 --- a/src/main/java/eu/dnetlib/validatorapi/controllers/ValidationController.java +++ b/src/main/java/eu/dnetlib/validatorapi/controllers/ValidationController.java @@ -13,6 +13,7 @@ import eu.dnetlib.validatorapi.repositories.ValidationJobRepository; import eu.dnetlib.validatorapi.repositories.ValidationResultRepository; import eu.dnetlib.validatorapi.routes.FairOaiPmhRoute2; import eu.dnetlib.validatorapi.routes.SimpleOaiPmhRoute; +import eu.dnetlib.validatorapi.utils.CheckCertificate; import org.apache.camel.CamelContext; import org.apache.camel.Exchange; import org.apache.camel.ProducerTemplate; @@ -208,12 +209,28 @@ public class ValidationController { ValidationJob validationJob = new ValidationJob(baseURL, set, numberOfRecords); validationJob.guidelines = profile.name(); validationJobRepository.save(validationJob); + + log.info("Initial validation job id "+ validationJob.id); + log.info("\n\n\n\n\n" + numberOfRecords + "\n\n\n\n"); int record = 0; double resultSum = 0; try { + + if (new URL(baseURL).getProtocol().equalsIgnoreCase("https")) { + if (!CheckCertificate.isValidCertificate(baseURL)) { + validationJob.exceptionMessage = "The SSL certificate could not be validated."; + validationJob.progress = "STOPPED"; + validationJob.endDate = new Date(); + validationJob.score = resultSum / validationJob.recordsTested; + validationJob.status = validationResultRepository.getStatus(validationJob.id); + validationJobRepository.save(validationJob); + return ResponseEntity.status(HttpStatus.SC_OK).body(validationJob); + } + } + UUID uuid = UUID.randomUUID(); RouteBuilder oaiPmhRouteBuilder;