X-Git-Url: https://gerrit.akraino.org/r/gitweb?p=validation.git;a=blobdiff_plain;f=ui%2Fsrc%2Fmain%2Fjava%2Forg%2Fakraino%2Fvalidation%2Fui%2Fservice%2FJenkinsJobNotificationService.java;h=c292b79a1825815eda6b1cc7f7dee0fd49b69f62;hp=429696a43b39a44929a008904823367fc7466035;hb=147ecf7bf79ea9967a121d0038103151a38ebef2;hpb=e6b82a7ccd840c8b089ae4d5e69930fd0dd5ef35 diff --git a/ui/src/main/java/org/akraino/validation/ui/service/JenkinsJobNotificationService.java b/ui/src/main/java/org/akraino/validation/ui/service/JenkinsJobNotificationService.java index 429696a..c292b79 100644 --- a/ui/src/main/java/org/akraino/validation/ui/service/JenkinsJobNotificationService.java +++ b/ui/src/main/java/org/akraino/validation/ui/service/JenkinsJobNotificationService.java @@ -18,15 +18,16 @@ package org.akraino.validation.ui.service; import java.util.ArrayList; import java.util.List; -import org.akraino.validation.ui.client.nexus.resources.ValidationNexusTestResult; import org.akraino.validation.ui.dao.ValidationTestResultDAO; import org.akraino.validation.ui.data.JnksJobNotify; import org.akraino.validation.ui.data.SubmissionStatus; -import org.akraino.validation.ui.entity.LabSilo; +import org.akraino.validation.ui.entity.LabInfo; import org.akraino.validation.ui.entity.Submission; import org.akraino.validation.ui.entity.ValidationDbTestResult; import org.akraino.validation.ui.service.utils.SubmissionHelper; +import org.apache.commons.httpclient.HttpException; import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate; +import org.onap.portalsdk.core.web.support.UserUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -43,15 +44,15 @@ public class JenkinsJobNotificationService { @Autowired private DbSubmissionAdapter submissionService; - @Autowired - private SiloService siloService; - @Autowired private DbResultAdapter dbAdapter; @Autowired private IntegratedResultService iService; + @Autowired + private LabService labService; + @Autowired private ValidationTestResultDAO vTestResultDAO; @@ -65,29 +66,32 @@ public class JenkinsJobNotificationService { LOGGER.debug(EELFLoggerDelegate.debugLogger, "No related submission was found"); return; } - String siloText = null; - for (LabSilo silo : siloService.getSilos()) { - if (silo.getLab().getLab().equals(submission.getTimeslot().getLab().getLab())) { - siloText = silo.getSilo(); - } - } - if (siloText == null) { - throw new IllegalArgumentException("Could not retrieve silo of the selected lab : " - + submission.getTimeslot().getLab().getLab().toString()); + LabInfo labInfo = labService.getLab(submission.getTimeslot().getLabInfo().getLab()); + if (labInfo == null) { + throw new IllegalArgumentException( + "Could not retrieve lab : " + submission.getTimeslot().getLabInfo().getLab().toString()); } LOGGER.info(EELFLoggerDelegate.applicationLogger, "Updating submission with id: " + submission.getSubmissionId()); submission.setSubmissionStatus(SubmissionStatus.Completed); submissionHelper.saveSubmission(submission); ValidationDbTestResult vDbResult = vTestResultDAO.getValidationTestResult(submission); - if (vDbResult != null) { - ValidationNexusTestResult vNexusResult = iService.getResult(vDbResult.getBlueprintName(), - vDbResult.getVersion(), vDbResult.getLab().getLab(), jnksJobNotify.getTimestamp()); - if (vNexusResult != null) { - List vNexusResults = new ArrayList(); - vNexusResults.add(vNexusResult); - dbAdapter.storeResultInDb(vNexusResults); + try { + if (vDbResult != null) { + // Fetch submission result from nexus + ValidationDbTestResult vNexusResult = iService.getResult( + vDbResult.getBlueprintInstance().getBlueprint().getBlueprintName(), + vDbResult.getBlueprintInstance().getVersion(), vDbResult.getLab().getLab(), + jnksJobNotify.getTimestamp()); + if (vNexusResult != null) { + List vNexusResults = new ArrayList(); + vNexusResults.add(vNexusResult); + dbAdapter.storeResultsInDb(vNexusResults); + } } + } catch (HttpException ex) { + LOGGER.error(EELFLoggerDelegate.errorLogger, + "Error when retrieving Nexus results. " + UserUtils.getStackTrace(ex)); } dbAdapter.updateTimestamp(jnksJobNotify); }