From 120443e561c0648184bdb3cd12d9d00118038f4a Mon Sep 17 00:00:00 2001 From: Tadgh Date: Sat, 16 Oct 2021 14:13:13 -0400 Subject: [PATCH] Bump core version (#3067) * Bump core version * Changes for version bump * Resolve NPE: * Test fix Co-authored-by: jamesagnew --- .../jpa/packages/IgInstallerDstu3Test.java | 4 ++-- .../resources/packages/erroneous-ig.tar.gz | Bin 10821 -> 91648 bytes .../extractor/SearchParamExtractorR5.java | 2 +- .../fhir/r5/hapi/ctx/HapiWorkerContext.java | 4 ++-- .../validator/FhirInstanceValidator.java | 5 +++-- .../VersionSpecificWorkerContextWrapper.java | 6 +++--- pom.xml | 2 +- 7 files changed, 12 insertions(+), 11 deletions(-) diff --git a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/packages/IgInstallerDstu3Test.java b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/packages/IgInstallerDstu3Test.java index 1e2d68d08fc..1324ac3644a 100644 --- a/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/packages/IgInstallerDstu3Test.java +++ b/hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/packages/IgInstallerDstu3Test.java @@ -75,12 +75,12 @@ public class IgInstallerDstu3Test extends BaseJpaDstu3Test { byte[] bytes = loadResourceAsByteArray("/packages/erroneous-ig.tar.gz"); - // Unknown base of StructureDefinitions + // That patient profile in this NPM package has an invalid base try { igInstaller.install(new PackageInstallationSpec().setName("erroneous-ig").setVersion("1.0.2").setInstallMode(PackageInstallationSpec.InstallModeEnum.STORE_AND_INSTALL).setPackageContents(bytes)); fail(); } catch (ImplementationGuideInstallationException e) { - assertThat(e.getMessage(), containsString("Failure when generating snapshot of StructureDefinition")); + assertThat(e.getMessage(), containsString("Could not load NPM package erroneous-ig#1.0.2")); } } diff --git a/hapi-fhir-jpaserver-base/src/test/resources/packages/erroneous-ig.tar.gz b/hapi-fhir-jpaserver-base/src/test/resources/packages/erroneous-ig.tar.gz index c0d87b07b6c52514b30c566940183bdaa3aff5da..404f4905ec29b4cf6416097b282facc3e5c0919e 100644 GIT binary patch literal 91648 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 myResourceTypeToStub = Collections.synchronizedMap(new HashMap<>()); @Override - public Base resolveConstant(Object appContext, String name, boolean beforeContext) throws PathEngineException { + public List resolveConstant(Object appContext, String name, boolean beforeContext) throws PathEngineException { return null; } diff --git a/hapi-fhir-structures-r5/src/main/java/org/hl7/fhir/r5/hapi/ctx/HapiWorkerContext.java b/hapi-fhir-structures-r5/src/main/java/org/hl7/fhir/r5/hapi/ctx/HapiWorkerContext.java index 06d22963f65..ba66b4937d3 100644 --- a/hapi-fhir-structures-r5/src/main/java/org/hl7/fhir/r5/hapi/ctx/HapiWorkerContext.java +++ b/hapi-fhir-structures-r5/src/main/java/org/hl7/fhir/r5/hapi/ctx/HapiWorkerContext.java @@ -189,7 +189,7 @@ public final class HapiWorkerContext extends I18nBase implements IWorkerContext severity = IssueSeverity.fromCode(result.getSeverityCode()); } ConceptDefinitionComponent definition = new ConceptDefinitionComponent().setCode(result.getCode()); - return new ValidationResult(severity, result.getMessage(), definition); + return new ValidationResult(severity, result.getMessage(), theSystem, definition); } @Override @@ -206,7 +206,7 @@ public final class HapiWorkerContext extends I18nBase implements IWorkerContext ConceptDefinitionComponent definition = new ConceptDefinitionComponent(); definition.setCode(theCode); definition.setDisplay(outcome.getDisplay()); - return new ValidationResult(definition); + return new ValidationResult(theSystem, definition); } return new ValidationResult(IssueSeverity.ERROR, "Unknown code[" + theCode + "] in system[" + Constants.codeSystemWithDefaultDescription(theSystem) + "]"); diff --git a/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/FhirInstanceValidator.java b/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/FhirInstanceValidator.java index f673e2fda01..384ff09111e 100644 --- a/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/FhirInstanceValidator.java +++ b/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/FhirInstanceValidator.java @@ -274,9 +274,10 @@ public class FhirInstanceValidator extends BaseValidatorBridge implements IInsta public static class NullEvaluationContext implements FHIRPathEngine.IEvaluationContext { + @Override - public Base resolveConstant(Object appContext, String name, boolean beforeContext) throws PathEngineException { - return null; + public List resolveConstant(Object appContext, String name, boolean beforeContext) throws PathEngineException { + return Collections.emptyList(); } @Override diff --git a/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/VersionSpecificWorkerContextWrapper.java b/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/VersionSpecificWorkerContextWrapper.java index 33233b1ae87..c402b9b8dfd 100644 --- a/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/VersionSpecificWorkerContextWrapper.java +++ b/hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/validator/VersionSpecificWorkerContextWrapper.java @@ -247,7 +247,7 @@ public class VersionSpecificWorkerContextWrapper extends I18nBase implements IWo } @Nonnull - private ValidationResult convertValidationResult(@Nullable IValidationSupport.CodeValidationResult theResult) { + private ValidationResult convertValidationResult(String theSystem, @Nullable IValidationSupport.CodeValidationResult theResult) { ValidationResult retVal = null; if (theResult != null) { String code = theResult.getCode(); @@ -255,7 +255,7 @@ public class VersionSpecificWorkerContextWrapper extends I18nBase implements IWo String issueSeverity = theResult.getSeverityCode(); String message = theResult.getMessage(); if (isNotBlank(code)) { - retVal = new ValidationResult(new org.hl7.fhir.r5.model.CodeSystem.ConceptDefinitionComponent() + retVal = new ValidationResult(theSystem, new org.hl7.fhir.r5.model.CodeSystem.ConceptDefinitionComponent() .setCode(code) .setDisplay(display)); } else if (isNotBlank(issueSeverity)) { @@ -589,7 +589,7 @@ public class VersionSpecificWorkerContextWrapper extends I18nBase implements IWo } else { result = myValidationSupportContext.getRootValidationSupport().validateCode(myValidationSupportContext, theValidationOptions, theSystem, theCode, theDisplay, null); } - return convertValidationResult(result); + return convertValidationResult(theSystem, result); } @Override diff --git a/pom.xml b/pom.xml index 5ba93f0789a..3cf52de46e0 100644 --- a/pom.xml +++ b/pom.xml @@ -759,7 +759,7 @@ - 5.4.10 + 5.5.4 1.0.3 -Dfile.encoding=UTF-8 -Xmx2048m