public Date getBestSignatureTime(String signatureId) { XmlSignature xmlSignature = getXmlSignatureById(signatureId); if (xmlSignature != null) { if (xmlSignature.getValidationProcessArchivalData() != null && xmlSignature.getValidationProcessArchivalData().getBestSignatureTime() != null) { return xmlSignature.getValidationProcessArchivalData().getBestSignatureTime(); } if (xmlSignature.getValidationProcessLongTermData() != null && xmlSignature.getValidationProcessLongTermData().getBestSignatureTime() != null) { return xmlSignature.getValidationProcessLongTermData().getBestSignatureTime(); } if (xmlSignature.getValidationProcessBasicSignatures() != null && xmlSignature.getValidationProcessBasicSignatures().getBestSignatureTime() != null) { return xmlSignature.getValidationProcessBasicSignatures().getBestSignatureTime(); } } return null; }
result.setBestSignatureTime(validationProcessLongTermData.getBestSignatureTime()); if (isValid(validationProcessLongTermData)) { return;
XmlValidationProcessLongTermData ltvResult = executeLongTermValidation(signatureAnalysis, signature, bbbs); conlusion = ltvResult.getConclusion(); bestSignatureTime = ltvResult.getBestSignatureTime(); } else if (ValidationLevel.ARCHIVAL_DATA.equals(validationLevel)) { executeTimestampsValidation(signatureAnalysis, signature, bbbs);
private void validateBestSigningTimes(Reports reports) { eu.europa.esig.dss.jaxb.detailedreport.DetailedReport detailedReportJaxb = reports.getDetailedReportJaxb(); List<eu.europa.esig.dss.jaxb.detailedreport.XmlSignature> xmlSignatures = detailedReportJaxb.getSignatures(); for (eu.europa.esig.dss.jaxb.detailedreport.XmlSignature xmlSignature : xmlSignatures) { assertNotNull(xmlSignature.getValidationProcessBasicSignatures().getBestSignatureTime()); assertNotNull(xmlSignature.getValidationProcessLongTermData().getBestSignatureTime()); assertNotNull(xmlSignature.getValidationProcessArchivalData().getBestSignatureTime()); } }