fix bug using wrong reference on uri in liquid renderer

This commit is contained in:
Grahame Grieve 2024-12-08 18:06:24 +03:00
parent 1f7289ed83
commit 16e826fd05

View File

@ -26,7 +26,6 @@ import org.hl7.fhir.r5.model.Reference;
import org.hl7.fhir.r5.model.Resource;
import org.hl7.fhir.r5.model.StructureDefinition;
import org.hl7.fhir.r5.model.UriType;
import org.hl7.fhir.r5.renderers.Renderer.RenderingStatus;
import org.hl7.fhir.r5.renderers.utils.RenderingContext;
import org.hl7.fhir.r5.renderers.utils.Resolver.ResourceReferenceKind;
import org.hl7.fhir.r5.renderers.utils.Resolver.ResourceWithReference;
@ -602,6 +601,10 @@ public abstract class ResourceRenderer extends DataRenderer {
}
if (v.startsWith("mailto:")) {
x.ah(v).addText(v.substring(7));
} else {
String link = getLinkForCode(v, null, null);
if (link != null) {
x.ah(context.prefixLocalHref(link)).addText(v);
} else {
ResourceWithReference rr = local ? resolveReference(uri.resource(), v, true) : resolveReference(uri);
if (rr != null) {
@ -630,6 +633,7 @@ public abstract class ResourceRenderer extends DataRenderer {
}
}
}
}
/**
* Eventually this will be retired if and when there's no more direct renderers