
001package org.hl7.fhir.convertors.conv43_50.resources43_50; 002 003import java.util.stream.Collectors; 004 005import org.hl7.fhir.convertors.context.ConversionContext43_50; 006import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.Canonical40_50; 007import org.hl7.fhir.convertors.conv43_50.datatypes43_50.general43_50.CodeableConcept43_50; 008import org.hl7.fhir.convertors.conv43_50.datatypes43_50.metadata43_50.ContactDetail43_50; 009import org.hl7.fhir.convertors.conv43_50.datatypes43_50.metadata43_50.UsageContext43_50; 010import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Boolean43_50; 011import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Canonical43_50; 012import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Code43_50; 013import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.DateTime43_50; 014import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Id43_50; 015import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.MarkDown43_50; 016import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.String43_50; 017import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Uri43_50; 018import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Url43_50; 019import org.hl7.fhir.convertors.conv43_50.datatypes43_50.special43_50.Reference43_50; 020import org.hl7.fhir.exceptions.FHIRException; 021import org.hl7.fhir.r4.model.Extension; 022import org.hl7.fhir.r5.model.CanonicalType; 023import org.hl7.fhir.utilities.Utilities; 024 025/* 026 Copyright (c) 2011+, HL7, Inc. 027 All rights reserved. 028 029 Redistribution and use in source and binary forms, with or without modification, 030 are permitted provided that the following conditions are met: 031 032 * Redistributions of source code must retain the above copyright notice, this 033 list of conditions and the following disclaimer. 034 * Redistributions in binary form must reproduce the above copyright notice, 035 this list of conditions and the following disclaimer in the documentation 036 and/or other materials provided with the distribution. 037 * Neither the name of HL7 nor the names of its contributors may be used to 038 endorse or promote products derived from this software without specific 039 prior written permission. 040 041 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 042 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 043 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 044 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 045 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 046 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 047 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 048 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 049 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 050 POSSIBILITY OF SUCH DAMAGE. 051 052*/ 053// Generated on Sun, Feb 24, 2019 11:37+1100 for FHIR v4.0.0 054public class ImplementationGuide43_50 { 055 056 static final String EXT_IG_DEFINITION_PARAMETER = "http://hl7.org/fhir/tools/StructureDefinition/ig-parameter"; 057 static final String EXT_IG_DEFINITION_RESOURCE_PROFILE = "http://hl7.org/fhir/5.0/StructureDefinition/extension-ImplementationGuide.definition.resource.profile"; 058 059 public static org.hl7.fhir.r5.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r4b.model.ImplementationGuide src) throws FHIRException { 060 if (src == null) 061 return null; 062 org.hl7.fhir.r5.model.ImplementationGuide tgt = new org.hl7.fhir.r5.model.ImplementationGuide(); 063 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyDomainResource(src, tgt); 064 if (src.hasUrl()) 065 tgt.setUrlElement(Uri43_50.convertUri(src.getUrlElement())); 066 if (src.hasVersion()) 067 tgt.setVersionElement(String43_50.convertString(src.getVersionElement())); 068 if (src.hasName()) 069 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 070 if (src.hasTitle()) 071 tgt.setTitleElement(String43_50.convertString(src.getTitleElement())); 072 if (src.hasStatus()) 073 tgt.setStatusElement(Enumerations43_50.convertPublicationStatus(src.getStatusElement())); 074 if (src.hasExperimental()) 075 tgt.setExperimentalElement(Boolean43_50.convertBoolean(src.getExperimentalElement())); 076 if (src.hasDate()) 077 tgt.setDateElement(DateTime43_50.convertDateTime(src.getDateElement())); 078 if (src.hasPublisher()) 079 tgt.setPublisherElement(String43_50.convertString(src.getPublisherElement())); 080 for (org.hl7.fhir.r4b.model.ContactDetail t : src.getContact()) 081 tgt.addContact(ContactDetail43_50.convertContactDetail(t)); 082 if (src.hasDescription()) 083 tgt.setDescriptionElement(MarkDown43_50.convertMarkdown(src.getDescriptionElement())); 084 for (org.hl7.fhir.r4b.model.UsageContext t : src.getUseContext()) 085 tgt.addUseContext(UsageContext43_50.convertUsageContext(t)); 086 for (org.hl7.fhir.r4b.model.CodeableConcept t : src.getJurisdiction()) 087 tgt.addJurisdiction(CodeableConcept43_50.convertCodeableConcept(t)); 088 if (src.hasCopyright()) 089 tgt.setCopyrightElement(MarkDown43_50.convertMarkdown(src.getCopyrightElement())); 090 if (src.hasPackageId()) 091 tgt.setPackageIdElement(Id43_50.convertId(src.getPackageIdElement())); 092 if (src.hasLicense()) 093 tgt.setLicenseElement(convertSPDXLicense(src.getLicenseElement())); 094 tgt.setFhirVersion(src.getFhirVersion().stream() 095 .map(Enumerations43_50::convertFHIRVersion) 096 .collect(Collectors.toList())); 097 for (org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDependsOnComponent t : src.getDependsOn()) 098 tgt.addDependsOn(convertImplementationGuideDependsOnComponent(t)); 099 for (org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) 100 tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); 101 if (src.hasDefinition()) 102 tgt.setDefinition(convertImplementationGuideDefinitionComponent(src.getDefinition())); 103 if (src.hasManifest()) 104 tgt.setManifest(convertImplementationGuideManifestComponent(src.getManifest())); 105 return tgt; 106 } 107 108 public static org.hl7.fhir.r4b.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r5.model.ImplementationGuide src) throws FHIRException { 109 if (src == null) 110 return null; 111 org.hl7.fhir.r4b.model.ImplementationGuide tgt = new org.hl7.fhir.r4b.model.ImplementationGuide(); 112 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyDomainResource(src, tgt); 113 if (src.hasUrl()) 114 tgt.setUrlElement(Uri43_50.convertUri(src.getUrlElement())); 115 if (src.hasVersion()) 116 tgt.setVersionElement(String43_50.convertString(src.getVersionElement())); 117 if (src.hasName()) 118 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 119 if (src.hasTitle()) 120 tgt.setTitleElement(String43_50.convertString(src.getTitleElement())); 121 if (src.hasStatus()) 122 tgt.setStatusElement(Enumerations43_50.convertPublicationStatus(src.getStatusElement())); 123 if (src.hasExperimental()) 124 tgt.setExperimentalElement(Boolean43_50.convertBoolean(src.getExperimentalElement())); 125 if (src.hasDate()) 126 tgt.setDateElement(DateTime43_50.convertDateTime(src.getDateElement())); 127 if (src.hasPublisher()) 128 tgt.setPublisherElement(String43_50.convertString(src.getPublisherElement())); 129 for (org.hl7.fhir.r5.model.ContactDetail t : src.getContact()) 130 tgt.addContact(ContactDetail43_50.convertContactDetail(t)); 131 if (src.hasDescription()) 132 tgt.setDescriptionElement(MarkDown43_50.convertMarkdown(src.getDescriptionElement())); 133 for (org.hl7.fhir.r5.model.UsageContext t : src.getUseContext()) 134 tgt.addUseContext(UsageContext43_50.convertUsageContext(t)); 135 for (org.hl7.fhir.r5.model.CodeableConcept t : src.getJurisdiction()) 136 tgt.addJurisdiction(CodeableConcept43_50.convertCodeableConcept(t)); 137 if (src.hasCopyright()) 138 tgt.setCopyrightElement(MarkDown43_50.convertMarkdown(src.getCopyrightElement())); 139 if (src.hasPackageId()) 140 tgt.setPackageIdElement(Id43_50.convertId(src.getPackageIdElement())); 141 if (src.hasLicense()) 142 tgt.setLicenseElement(convertSPDXLicense(src.getLicenseElement())); 143 tgt.setFhirVersion(src.getFhirVersion().stream() 144 .map(Enumerations43_50::convertFHIRVersion) 145 .collect(Collectors.toList())); 146 for (org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDependsOnComponent t : src.getDependsOn()) 147 tgt.addDependsOn(convertImplementationGuideDependsOnComponent(t)); 148 for (org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) 149 tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); 150 if (src.hasDefinition()) 151 tgt.setDefinition(convertImplementationGuideDefinitionComponent(src.getDefinition())); 152 if (src.hasManifest()) 153 tgt.setManifest(convertImplementationGuideManifestComponent(src.getManifest())); 154 return tgt; 155 } 156 157 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.ImplementationGuide.SPDXLicense> convertSPDXLicense(org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.ImplementationGuide.SPDXLicense> src) throws FHIRException { 158 if (src == null || src.isEmpty()) 159 return null; 160 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.ImplementationGuide.SPDXLicense> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.ImplementationGuide.SPDXLicenseEnumFactory()); 161 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 162 tgt.setValue(org.hl7.fhir.r5.model.ImplementationGuide.SPDXLicense.fromCode(src.getValue().toCode())); 163 return tgt; 164 } 165 166 static public org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.ImplementationGuide.SPDXLicense> convertSPDXLicense(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.ImplementationGuide.SPDXLicense> src) throws FHIRException { 167 if (src == null || src.isEmpty()) 168 return null; 169 org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.ImplementationGuide.SPDXLicense> tgt = new org.hl7.fhir.r4b.model.Enumeration<>(new org.hl7.fhir.r4b.model.ImplementationGuide.SPDXLicenseEnumFactory()); 170 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 171 tgt.setValue(org.hl7.fhir.r4b.model.ImplementationGuide.SPDXLicense.fromCode(src.getValue().toCode())); 172 return tgt; 173 } 174 175 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDependsOnComponent convertImplementationGuideDependsOnComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDependsOnComponent src) throws FHIRException { 176 if (src == null) 177 return null; 178 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDependsOnComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDependsOnComponent(); 179 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 180 if (src.hasUri()) 181 tgt.setUriElement(Canonical43_50.convertCanonical(src.getUriElement())); 182 if (src.hasPackageId()) 183 tgt.setPackageIdElement(Id43_50.convertId(src.getPackageIdElement())); 184 if (src.hasVersion()) 185 tgt.setVersionElement(String43_50.convertString(src.getVersionElement())); 186 return tgt; 187 } 188 189 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDependsOnComponent convertImplementationGuideDependsOnComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDependsOnComponent src) throws FHIRException { 190 if (src == null) 191 return null; 192 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDependsOnComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDependsOnComponent(); 193 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 194 if (src.hasUri()) 195 tgt.setUriElement(Canonical43_50.convertCanonical(src.getUriElement())); 196 if (src.hasPackageId()) 197 tgt.setPackageIdElement(Id43_50.convertId(src.getPackageIdElement())); 198 if (src.hasVersion()) 199 tgt.setVersionElement(String43_50.convertString(src.getVersionElement())); 200 return tgt; 201 } 202 203 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { 204 if (src == null) 205 return null; 206 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideGlobalComponent(); 207 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 208 if (src.hasType()) 209 tgt.setTypeElement(Code43_50.convertCode(src.getTypeElement())); 210 if (src.hasProfile()) 211 tgt.setProfileElement(Canonical43_50.convertCanonical(src.getProfileElement())); 212 return tgt; 213 } 214 215 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { 216 if (src == null) 217 return null; 218 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideGlobalComponent(); 219 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 220 if (src.hasType()) 221 tgt.setTypeElement(Code43_50.convertCode(src.getTypeElement())); 222 if (src.hasProfile()) 223 tgt.setProfileElement(Canonical43_50.convertCanonical(src.getProfileElement())); 224 return tgt; 225 } 226 227 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionComponent convertImplementationGuideDefinitionComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionComponent src) throws FHIRException { 228 if (src == null) 229 return null; 230 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionComponent(); 231 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 232 for (org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent t : src.getGrouping()) 233 tgt.addGrouping(convertImplementationGuideDefinitionGroupingComponent(t)); 234 for (org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent t : src.getResource()) 235 tgt.addResource(convertImplementationGuideDefinitionResourceComponent(t)); 236 if (src.hasPage()) 237 tgt.setPage(convertImplementationGuideDefinitionPageComponent(src.getPage())); 238 for (org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent t : src.getParameter()) 239 tgt.addParameter(convertImplementationGuideDefinitionParameterComponent(t)); 240 for (org.hl7.fhir.r4b.model.Extension e : org.hl7.fhir.r4b.utils.ToolingExtensions.getExtensions(src, EXT_IG_DEFINITION_PARAMETER)) { 241 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent p = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent(); 242 p.getCode().setCode(org.hl7.fhir.r4b.utils.ToolingExtensions.readStringExtension(e, "code")); 243 p.setValue(org.hl7.fhir.r4b.utils.ToolingExtensions.readStringExtension(e, "Value")); 244 tgt.addParameter(p); 245 } 246 for (org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent t : src.getTemplate()) 247 tgt.addTemplate(convertImplementationGuideDefinitionTemplateComponent(t)); 248 return tgt; 249 } 250 251 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionComponent convertImplementationGuideDefinitionComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionComponent src) throws FHIRException { 252 if (src == null) 253 return null; 254 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionComponent(); 255 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 256 for (org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent t : src.getGrouping()) 257 tgt.addGrouping(convertImplementationGuideDefinitionGroupingComponent(t)); 258 for (org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent t : src.getResource()) 259 tgt.addResource(convertImplementationGuideDefinitionResourceComponent(t)); 260 if (src.hasPage()) 261 tgt.setPage(convertImplementationGuideDefinitionPageComponent(src.getPage())); 262 for (org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent t : src.getParameter()) { 263 if (Utilities.existsInList(t.getCode().getCode(), "apply", "path-resource", "path-pages", "path-tx-cache", "expansion-parameter", "rule-broken-links", "generate-xml", "generate-json", "generate-turtle", "html-template")) 264 tgt.addParameter(convertImplementationGuideDefinitionParameterComponent(t)); 265 else { 266 org.hl7.fhir.r4b.model.Extension e = new org.hl7.fhir.r4b.model.Extension(EXT_IG_DEFINITION_PARAMETER); 267 org.hl7.fhir.r4b.model.Extension eCode = new org.hl7.fhir.r4b.model.Extension("code", new org.hl7.fhir.r4b.model.CodeType(t.getCode().getCode())); 268 org.hl7.fhir.r4b.model.Extension eValue = new org.hl7.fhir.r4b.model.Extension("value", new org.hl7.fhir.r4b.model.StringType(t.getValue())); 269 e.addExtension(eCode); 270 e.addExtension(eValue); 271 tgt.addExtension(e); 272 } 273 } 274 for (org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent t : src.getTemplate()) 275 tgt.addTemplate(convertImplementationGuideDefinitionTemplateComponent(t)); 276 return tgt; 277 } 278 279 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent convertImplementationGuideDefinitionGroupingComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent src) throws FHIRException { 280 if (src == null) 281 return null; 282 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent(); 283 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 284 if (src.hasName()) 285 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 286 if (src.hasDescription()) 287 tgt.setDescriptionElement(String43_50.convertStringToMarkdown(src.getDescriptionElement())); 288 return tgt; 289 } 290 291 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent convertImplementationGuideDefinitionGroupingComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent src) throws FHIRException { 292 if (src == null) 293 return null; 294 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionGroupingComponent(); 295 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 296 if (src.hasName()) 297 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 298 if (src.hasDescription()) 299 tgt.setDescriptionElement(String43_50.convertString(src.getDescriptionElement())); 300 return tgt; 301 } 302 303 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent convertImplementationGuideDefinitionResourceComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent src) throws FHIRException { 304 if (src == null) 305 return null; 306 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent(); 307 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 308 if (src.hasReference()) 309 tgt.setReference(Reference43_50.convertReference(src.getReference())); 310 tgt.setFhirVersion(src.getFhirVersion().stream() 311 .map(Enumerations43_50::convertFHIRVersion) 312 .collect(Collectors.toList())); 313 if (src.hasName()) 314 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 315 if (src.hasDescription()) 316 tgt.setDescriptionElement(String43_50.convertStringToMarkdown(src.getDescriptionElement())); 317 if (src.hasExampleBooleanType()) 318 tgt.setIsExampleElement(Boolean43_50.convertBoolean(src.getExampleBooleanType())); 319 if (src.hasExampleCanonicalType()) { 320 tgt.setIsExample(true); 321 tgt.getProfile().add(Canonical43_50.convertCanonical(src.getExampleCanonicalType())); 322 } 323 for (org.hl7.fhir.r4b.model.Extension ext: src.getExtensionsByUrl(EXT_IG_DEFINITION_RESOURCE_PROFILE)) { 324 tgt.getProfile().add(Canonical43_50.convertCanonical((org.hl7.fhir.r4b.model.CanonicalType)ext.getValue())); 325 } 326 if (src.hasGroupingId()) 327 tgt.setGroupingIdElement(Id43_50.convertId(src.getGroupingIdElement())); 328 return tgt; 329 } 330 331 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent convertImplementationGuideDefinitionResourceComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent src) throws FHIRException { 332 if (src == null) 333 return null; 334 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionResourceComponent(); 335 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 336 if (src.hasReference()) 337 tgt.setReference(Reference43_50.convertReference(src.getReference())); 338 tgt.setFhirVersion(src.getFhirVersion().stream() 339 .map(Enumerations43_50::convertFHIRVersion) 340 .collect(Collectors.toList())); 341 if (src.hasName()) 342 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 343 if (src.hasDescription()) 344 tgt.setDescriptionElement(String43_50.convertString(src.getDescriptionElement())); 345 if (src.hasIsExample()) 346 tgt.setExample(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getIsExampleElement())); 347 if (src.hasProfile()) 348 tgt.setExample(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getProfile().get(0))); 349 if (src.getProfile().size() > 1) { 350 for (CanonicalType p: src.getProfile().subList(1, src.getProfile().size())) { 351 tgt.addExtension(EXT_IG_DEFINITION_RESOURCE_PROFILE, Canonical43_50.convertCanonical(p)); 352 } 353 } 354 if (src.hasGroupingId()) 355 tgt.setGroupingIdElement(Id43_50.convertId(src.getGroupingIdElement())); 356 return tgt; 357 } 358 359 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent convertImplementationGuideDefinitionPageComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent src) throws FHIRException { 360 if (src == null) 361 return null; 362 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent(); 363 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 364 if (src.hasNameReference()) 365 tgt.setName(src.getNameReference().getReference()); 366 else if (src.hasNameUrlType()) 367 tgt.setName(src.getNameUrlType().getValue()); 368 if (src.hasTitle()) 369 tgt.setTitleElement(String43_50.convertString(src.getTitleElement())); 370 if (src.hasGeneration()) 371 tgt.setGenerationElement(convertGuidePageGeneration(src.getGenerationElement())); 372 for (org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent t : src.getPage()) 373 tgt.addPage(convertImplementationGuideDefinitionPageComponent(t)); 374 return tgt; 375 } 376 377 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent convertImplementationGuideDefinitionPageComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent src) throws FHIRException { 378 if (src == null) 379 return null; 380 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent(); 381 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 382 if (src.hasName()) 383 tgt.setName(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getNameElement())); 384 if (src.hasTitle()) 385 tgt.setTitleElement(String43_50.convertString(src.getTitleElement())); 386 if (src.hasGeneration()) 387 tgt.setGenerationElement(convertGuidePageGeneration(src.getGenerationElement())); 388 for (org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionPageComponent t : src.getPage()) 389 tgt.addPage(convertImplementationGuideDefinitionPageComponent(t)); 390 return tgt; 391 } 392 393 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration> convertGuidePageGeneration(org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration> src) throws FHIRException { 394 if (src == null || src.isEmpty()) 395 return null; 396 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGenerationEnumFactory()); 397 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 398 switch (src.getValue()) { 399 case HTML: 400 tgt.setValue(org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration.HTML); 401 break; 402 case MARKDOWN: 403 tgt.setValue(org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration.MARKDOWN); 404 break; 405 case XML: 406 tgt.setValue(org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration.XML); 407 break; 408 case GENERATED: 409 tgt.setValue(org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration.GENERATED); 410 break; 411 default: 412 tgt.setValue(org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration.NULL); 413 break; 414 } 415 return tgt; 416 } 417 418 static public org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration> convertGuidePageGeneration(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.ImplementationGuide.GuidePageGeneration> src) throws FHIRException { 419 if (src == null || src.isEmpty()) 420 return null; 421 org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration> tgt = new org.hl7.fhir.r4b.model.Enumeration<>(new org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGenerationEnumFactory()); 422 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 423 switch (src.getValue()) { 424 case HTML: 425 tgt.setValue(org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration.HTML); 426 break; 427 case MARKDOWN: 428 tgt.setValue(org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration.MARKDOWN); 429 break; 430 case XML: 431 tgt.setValue(org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration.XML); 432 break; 433 case GENERATED: 434 tgt.setValue(org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration.GENERATED); 435 break; 436 default: 437 tgt.setValue(org.hl7.fhir.r4b.model.ImplementationGuide.GuidePageGeneration.NULL); 438 break; 439 } 440 return tgt; 441 } 442 443 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent convertImplementationGuideDefinitionParameterComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent src) throws FHIRException { 444 if (src == null) 445 return null; 446 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent(); 447 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 448 if (src.hasCode()) 449 tgt.getCode().setCode(src.getCode()); 450 if (src.hasValue()) 451 tgt.setValueElement(String43_50.convertString(src.getValueElement())); 452 return tgt; 453 } 454 455 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent convertImplementationGuideDefinitionParameterComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent src) throws FHIRException { 456 if (src == null) 457 return null; 458 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionParameterComponent(); 459 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 460 if (src.hasCode()) 461 tgt.getCodeElement().setValueAsString(src.getCode().getCode()); 462 if (src.hasValue()) 463 tgt.setValueElement(String43_50.convertString(src.getValueElement())); 464 return tgt; 465 } 466 467 public static org.hl7.fhir.r5.utils.GuideParameterCode convertGuideParameterCode(org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode src) throws FHIRException { 468 if (src == null) 469 return null; 470 switch (src) { 471 case APPLY: 472 return org.hl7.fhir.r5.utils.GuideParameterCode.APPLY; 473 case PATHRESOURCE: 474 return org.hl7.fhir.r5.utils.GuideParameterCode.PATHRESOURCE; 475 case PATHPAGES: 476 return org.hl7.fhir.r5.utils.GuideParameterCode.PATHPAGES; 477 case PATHTXCACHE: 478 return org.hl7.fhir.r5.utils.GuideParameterCode.PATHTXCACHE; 479 case EXPANSIONPARAMETER: 480 return org.hl7.fhir.r5.utils.GuideParameterCode.EXPANSIONPARAMETER; 481 case RULEBROKENLINKS: 482 return org.hl7.fhir.r5.utils.GuideParameterCode.RULEBROKENLINKS; 483 case GENERATEXML: 484 return org.hl7.fhir.r5.utils.GuideParameterCode.GENERATEXML; 485 case GENERATEJSON: 486 return org.hl7.fhir.r5.utils.GuideParameterCode.GENERATEJSON; 487 case GENERATETURTLE: 488 return org.hl7.fhir.r5.utils.GuideParameterCode.GENERATETURTLE; 489 case HTMLTEMPLATE: 490 return org.hl7.fhir.r5.utils.GuideParameterCode.HTMLTEMPLATE; 491 default: 492 return org.hl7.fhir.r5.utils.GuideParameterCode.NULL; 493 } 494 } 495 496 public static org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode convertGuideParameterCode(org.hl7.fhir.r5.utils.GuideParameterCode src) throws FHIRException { 497 if (src == null) 498 return null; 499 switch (src) { 500 case APPLY: 501 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.APPLY; 502 case PATHRESOURCE: 503 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.PATHRESOURCE; 504 case PATHPAGES: 505 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.PATHPAGES; 506 case PATHTXCACHE: 507 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.PATHTXCACHE; 508 case EXPANSIONPARAMETER: 509 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.EXPANSIONPARAMETER; 510 case RULEBROKENLINKS: 511 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.RULEBROKENLINKS; 512 case GENERATEXML: 513 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.GENERATEXML; 514 case GENERATEJSON: 515 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.GENERATEJSON; 516 case GENERATETURTLE: 517 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.GENERATETURTLE; 518 case HTMLTEMPLATE: 519 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.HTMLTEMPLATE; 520 default: 521 return org.hl7.fhir.r4b.model.ImplementationGuide.GuideParameterCode.NULL; 522 } 523 } 524 525 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent convertImplementationGuideDefinitionTemplateComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent src) throws FHIRException { 526 if (src == null) 527 return null; 528 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent(); 529 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 530 if (src.hasCode()) 531 tgt.setCodeElement(Code43_50.convertCode(src.getCodeElement())); 532 if (src.hasSource()) 533 tgt.setSourceElement(String43_50.convertString(src.getSourceElement())); 534 if (src.hasScope()) 535 tgt.setScopeElement(String43_50.convertString(src.getScopeElement())); 536 return tgt; 537 } 538 539 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent convertImplementationGuideDefinitionTemplateComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent src) throws FHIRException { 540 if (src == null) 541 return null; 542 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideDefinitionTemplateComponent(); 543 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 544 if (src.hasCode()) 545 tgt.setCodeElement(Code43_50.convertCode(src.getCodeElement())); 546 if (src.hasSource()) 547 tgt.setSourceElement(String43_50.convertString(src.getSourceElement())); 548 if (src.hasScope()) 549 tgt.setScopeElement(String43_50.convertString(src.getScopeElement())); 550 return tgt; 551 } 552 553 public static org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideManifestComponent convertImplementationGuideManifestComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideManifestComponent src) throws FHIRException { 554 if (src == null) 555 return null; 556 org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideManifestComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideManifestComponent(); 557 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 558 if (src.hasRendering()) 559 tgt.setRenderingElement(Url43_50.convertUrl(src.getRenderingElement())); 560 for (org.hl7.fhir.r4b.model.ImplementationGuide.ManifestResourceComponent t : src.getResource()) 561 tgt.addResource(convertManifestResourceComponent(t)); 562 for (org.hl7.fhir.r4b.model.ImplementationGuide.ManifestPageComponent t : src.getPage()) 563 tgt.addPage(convertManifestPageComponent(t)); 564 for (org.hl7.fhir.r4b.model.StringType t : src.getImage()) tgt.getImage().add(String43_50.convertString(t)); 565 for (org.hl7.fhir.r4b.model.StringType t : src.getOther()) tgt.getOther().add(String43_50.convertString(t)); 566 return tgt; 567 } 568 569 public static org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideManifestComponent convertImplementationGuideManifestComponent(org.hl7.fhir.r5.model.ImplementationGuide.ImplementationGuideManifestComponent src) throws FHIRException { 570 if (src == null) 571 return null; 572 org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideManifestComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ImplementationGuideManifestComponent(); 573 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 574 if (src.hasRendering()) 575 tgt.setRenderingElement(Url43_50.convertUrl(src.getRenderingElement())); 576 for (org.hl7.fhir.r5.model.ImplementationGuide.ManifestResourceComponent t : src.getResource()) 577 tgt.addResource(convertManifestResourceComponent(t)); 578 for (org.hl7.fhir.r5.model.ImplementationGuide.ManifestPageComponent t : src.getPage()) 579 tgt.addPage(convertManifestPageComponent(t)); 580 for (org.hl7.fhir.r5.model.StringType t : src.getImage()) tgt.getImage().add(String43_50.convertString(t)); 581 for (org.hl7.fhir.r5.model.StringType t : src.getOther()) tgt.getOther().add(String43_50.convertString(t)); 582 return tgt; 583 } 584 585 public static org.hl7.fhir.r5.model.ImplementationGuide.ManifestResourceComponent convertManifestResourceComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ManifestResourceComponent src) throws FHIRException { 586 if (src == null) 587 return null; 588 org.hl7.fhir.r5.model.ImplementationGuide.ManifestResourceComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ManifestResourceComponent(); 589 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 590 if (src.hasReference()) 591 tgt.setReference(Reference43_50.convertReference(src.getReference())); 592 if (src.hasExampleBooleanType()) 593 tgt.setIsExampleElement(Boolean43_50.convertBoolean(src.getExampleBooleanType())); 594 if (src.hasExampleCanonicalType()) 595 tgt.getProfile().add((Canonical43_50.convertCanonical(src.getExampleCanonicalType()))); 596 if (src.hasRelativePath()) 597 tgt.setRelativePathElement(Url43_50.convertUrl(src.getRelativePathElement())); 598 return tgt; 599 } 600 601 public static org.hl7.fhir.r4b.model.ImplementationGuide.ManifestResourceComponent convertManifestResourceComponent(org.hl7.fhir.r5.model.ImplementationGuide.ManifestResourceComponent src) throws FHIRException { 602 if (src == null) 603 return null; 604 org.hl7.fhir.r4b.model.ImplementationGuide.ManifestResourceComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ManifestResourceComponent(); 605 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 606 if (src.hasReference()) 607 tgt.setReference(Reference43_50.convertReference(src.getReference())); 608 if (src.hasIsExample()) 609 tgt.setExample(Boolean43_50.convertBoolean(src.getIsExampleElement())); 610 if (src.hasProfile()) 611 tgt.setExample(Canonical43_50.convertCanonical(src.getProfile().get(0))); 612 if (src.hasRelativePath()) 613 tgt.setRelativePathElement(Url43_50.convertUrl(src.getRelativePathElement())); 614 return tgt; 615 } 616 617 public static org.hl7.fhir.r5.model.ImplementationGuide.ManifestPageComponent convertManifestPageComponent(org.hl7.fhir.r4b.model.ImplementationGuide.ManifestPageComponent src) throws FHIRException { 618 if (src == null) 619 return null; 620 org.hl7.fhir.r5.model.ImplementationGuide.ManifestPageComponent tgt = new org.hl7.fhir.r5.model.ImplementationGuide.ManifestPageComponent(); 621 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 622 if (src.hasName()) 623 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 624 if (src.hasTitle()) 625 tgt.setTitleElement(String43_50.convertString(src.getTitleElement())); 626 for (org.hl7.fhir.r4b.model.StringType t : src.getAnchor()) tgt.getAnchor().add(String43_50.convertString(t)); 627 return tgt; 628 } 629 630 public static org.hl7.fhir.r4b.model.ImplementationGuide.ManifestPageComponent convertManifestPageComponent(org.hl7.fhir.r5.model.ImplementationGuide.ManifestPageComponent src) throws FHIRException { 631 if (src == null) 632 return null; 633 org.hl7.fhir.r4b.model.ImplementationGuide.ManifestPageComponent tgt = new org.hl7.fhir.r4b.model.ImplementationGuide.ManifestPageComponent(); 634 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 635 if (src.hasName()) 636 tgt.setNameElement(String43_50.convertString(src.getNameElement())); 637 if (src.hasTitle()) 638 tgt.setTitleElement(String43_50.convertString(src.getTitleElement())); 639 for (org.hl7.fhir.r5.model.StringType t : src.getAnchor()) tgt.getAnchor().add(String43_50.convertString(t)); 640 return tgt; 641 } 642}