From 9bcf077e8eb3e1cc7e5c158265e80a0aa655a78c Mon Sep 17 00:00:00 2001 From: Grahame Grieve Date: Tue, 22 Oct 2024 09:26:19 +1030 Subject: [PATCH] Add version warnings on IGs to qa.html --- .../renderers/ValidationPresenter.java | 31 +++++++++++++++++-- pom.xml | 2 +- 2 files changed, 29 insertions(+), 4 deletions(-) diff --git a/org.hl7.fhir.publisher.core/src/main/java/org/hl7/fhir/igtools/renderers/ValidationPresenter.java b/org.hl7.fhir.publisher.core/src/main/java/org/hl7/fhir/igtools/renderers/ValidationPresenter.java index e084cde2..2d1cf8e4 100644 --- a/org.hl7.fhir.publisher.core/src/main/java/org/hl7/fhir/igtools/renderers/ValidationPresenter.java +++ b/org.hl7.fhir.publisher.core/src/main/java/org/hl7/fhir/igtools/renderers/ValidationPresenter.java @@ -305,13 +305,14 @@ public ValidationMessage getVm() { boolean showReferenceMessages = false; boolean noExperimentalContent = false; boolean displayWarnings = false; + private List versionProblems; public ValidationPresenter(String statedVersion, String igVersion, IGKnowledgeProvider provider, IGKnowledgeProvider altProvider, String root, String packageId, String altPackageId, String toolsVersion, String currentToolsVersion, RealmBusinessRules realm, PreviousVersionComparator previousVersionComparator, IpaComparator ipaComparator, IpsComparator ipsComparator, String dependencies, String csAnalysis, String pubReqCheck, String globalCheck, String copyrightYear, IWorkerContext context, Set r5Extensions, List modifierExtensions, String draftDependencies, - List noNarratives, List noValidation, boolean noValidate, boolean noGenerate, DependentIGFinder dependentIgs, TerminologyClientManager txServers) { + List noNarratives, List noValidation, boolean noValidate, boolean noGenerate, DependentIGFinder dependentIgs, TerminologyClientManager txServers, List versionProblems) { super(); this.statedVersion = statedVersion; this.igVersion = igVersion; @@ -341,6 +342,7 @@ public ValidationPresenter(String statedVersion, String igVersion, IGKnowledgePr this.draftDependencies = draftDependencies; this.globalCheck = globalCheck; this.txServers = txServers; + this.versionProblems = versionProblems; ruleDateCutoff = Date.from(LocalDate.now().minusMonths(1).atStartOfDay(ZoneId.systemDefault()).toInstant()); determineCode(); } @@ -733,6 +735,10 @@ public List genQAHtml(String title, List files, String b.append(genEnd()); b.append(genStartInternal()); int id = 0; + for (String vp : versionProblems) { + b.append(genDetails(vp, id)); + id++; + } for (ValidationMessage vm : linkErrors) { b.append(genDetails(vm, id)); id++; @@ -1032,12 +1038,12 @@ public static List filterMessages(List mes private final String detailsTemplateTxLink = " \r\n"+ - " $path$$level$$msg$$comment$ (from $txsrvr$, see log)\r\n"+ + " $path$$level$$msg$$comment$ (from $txsrvr$, see log)\r\n"+ " \r\n"; private final String detailsTemplateTxNoLink = " \r\n"+ - " $path$$level$$msg$$comment$ (from $txsrvr$)\r\n"+ + " $path$$level$$msg$$comment$ (from $txsrvr$)\r\n"+ " \r\n"; private final String detailsTemplateWithExtraDetails = @@ -1543,6 +1549,25 @@ private String genDetails(ValidationMessage vm, int id) { return t.render(); } + private String genDetails(String vp, int id) { + String tid = null; + tid = detailsTemplate; + ST t = template(tid); + t.add("path", ""); + t.add("pathlink", ""); + t.add("level", "warning"); + t.add("color", colorForLevel(IssueSeverity.WARNING, false)); + t.add("halfcolor", halfColorForLevel(IssueSeverity.WARNING, false)); + t.add("id", "l"+id); + t.add("mid", ""); + t.add("msg", vp); + t.add("msgdetails", vp); + t.add("comment", ""); + t.add("tx", ""); + t.add("txsrvr", ""); + return t.render(); + } + private String getServer(String server) { if (txServers.getServerMap().containsKey(server)) { return txServers.getServerMap().get(server).getClient().getAddress(); diff --git a/pom.xml b/pom.xml index 05d6aae5..299fd592 100644 --- a/pom.xml +++ b/pom.xml @@ -8,7 +8,7 @@ pom - 6.3.32 + 6.3.33-SNAPSHOT 3.0.0-M5 5.2.1 4.11.0