private CertificateQualification getCertificateQualification(ValidationTime validationTime) { XmlCertificate certificate = jaxbDetailedReport.getCertificate(); if (certificate != null) { List<XmlValidationCertificateQualification> validationCertificateQualifications = certificate.getValidationCertificateQualification(); if (Utils.isCollectionNotEmpty(validationCertificateQualifications)) { for (XmlValidationCertificateQualification validationCertificateQualification : validationCertificateQualifications) { if (validationTime == validationCertificateQualification.getValidationTime()) { return validationCertificateQualification.getCertificateQualification(); } } } } return CertificateQualification.NA; }
public Indication getCertificateXCVIndication(String certificateId) { if (jaxbDetailedReport.getCertificate() == null) { throw new DSSException("Only supported in report for certificate"); } List<XmlBasicBuildingBlocks> basicBuildingBlocks = jaxbDetailedReport.getBasicBuildingBlocks(); for (XmlBasicBuildingBlocks xmlBasicBuildingBlocks : basicBuildingBlocks) { XmlXCV xcv = xmlBasicBuildingBlocks.getXCV(); if (xcv != null) { List<XmlSubXCV> subXCV = xcv.getSubXCV(); for (XmlSubXCV xmlSubXCV : subXCV) { if (Utils.areStringsEqual(certificateId, xmlSubXCV.getId())) { return xmlSubXCV.getConclusion().getIndication(); } } } } return null; }
@Test public void dkNoChain() throws Exception { FileInputStream fis = new FileInputStream("src/test/resources/cert-validation/dk_no_chain.xml"); DiagnosticData diagnosticData = getJAXBObjectFromString(fis, DiagnosticData.class, "/xsd/DiagnosticData.xsd"); assertNotNull(diagnosticData); String certificateId = "3ECBC4648AA3BCB671976F53D7516F774DB1C886FAB81FE5469462181187DB8D"; CertificateProcessExecutor executor = new CertificateProcessExecutor(); executor.setCertificateId(certificateId); executor.setDiagnosticData(diagnosticData); executor.setValidationPolicy(loadPolicy()); executor.setCurrentTime(diagnosticData.getValidationDate()); CertificateReports reports = executor.execute(); DetailedReport detailedReportJaxb = reports.getDetailedReportJaxb(); assertNotNull(detailedReportJaxb); assertNotNull(detailedReportJaxb.getCertificate()); assertEquals(0, detailedReportJaxb.getTLAnalysis().size()); assertEquals(1, detailedReportJaxb.getBasicBuildingBlocks().size()); assertEquals(0, detailedReportJaxb.getSignatures().size()); SimpleCertificateReport simpleReportJaxb = reports.getSimpleReportJaxb(); assertNotNull(simpleReportJaxb); assertNotNull(simpleReportJaxb.getChain()); assertEquals(1, simpleReportJaxb.getChain().size()); XmlChainItem cert = simpleReportJaxb.getChain().get(0); assertEquals(certificateId, cert.getId()); assertNotNull(cert.getQualificationAtIssuance()); assertNotNull(cert.getQualificationAtValidation()); assertNull(cert.getTrustAnchors()); }
@Test public void twoSDIdiffentResults() throws Exception { FileInputStream fis = new FileInputStream("src/test/resources/cert-validation/2-sdi-different-results.xml"); DiagnosticData diagnosticData = getJAXBObjectFromString(fis, DiagnosticData.class, "/xsd/DiagnosticData.xsd"); assertNotNull(diagnosticData); String certificateId = "E4A94773CF7B28C2BDF25015BE6716E501E73AB82BF0A9788D0DF8AD14D6876D"; CertificateProcessExecutor executor = new CertificateProcessExecutor(); executor.setCertificateId(certificateId); executor.setDiagnosticData(diagnosticData); executor.setValidationPolicy(loadPolicy()); executor.setCurrentTime(diagnosticData.getValidationDate()); CertificateReports reports = executor.execute(); DetailedReport detailedReportJaxb = reports.getDetailedReportJaxb(); XmlCertificate certificate = detailedReportJaxb.getCertificate(); List<XmlValidationCertificateQualification> validationCertificateQualification = certificate.getValidationCertificateQualification(); for (XmlValidationCertificateQualification xmlValidationCertificateQualification : validationCertificateQualification) { assertEquals(Indication.FAILED, xmlValidationCertificateQualification.getConclusion().getIndication()); } }
assertNotNull(detailedReportJaxb.getCertificate()); assertEquals(2, detailedReportJaxb.getTLAnalysis().size()); assertEquals(1, detailedReportJaxb.getBasicBuildingBlocks().size());
assertNotNull(detailedReportJaxb.getCertificate()); assertEquals(2, detailedReportJaxb.getTLAnalysis().size()); assertEquals(1, detailedReportJaxb.getBasicBuildingBlocks().size());