001package org.hl7.fhir.convertors.conv40_50.resources40_50; 002 003import org.hl7.fhir.convertors.VersionConvertorConstants; 004import org.hl7.fhir.convertors.context.ConversionContext40_50; 005import org.hl7.fhir.convertors.conv40_50.datatypes40_50.general40_50.CodeableConcept40_50; 006import org.hl7.fhir.convertors.conv40_50.datatypes40_50.general40_50.Identifier40_50; 007import org.hl7.fhir.convertors.conv40_50.datatypes40_50.metadata40_50.ContactDetail40_50; 008import org.hl7.fhir.convertors.conv40_50.datatypes40_50.metadata40_50.UsageContext40_50; 009import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.*; 010import org.hl7.fhir.exceptions.FHIRException; 011import org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence; 012import org.hl7.fhir.r5.model.CanonicalType; 013import org.hl7.fhir.r5.model.Enumeration; 014import org.hl7.fhir.r5.model.Enumerations; 015import org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship; 016import org.hl7.fhir.r5.utils.ToolingExtensions; 017import org.hl7.fhir.utilities.CanonicalPair; 018 019/* 020 Copyright (c) 2011+, HL7, Inc. 021 All rights reserved. 022 023 Redistribution and use in source and binary forms, with or without modification, 024 are permitted provided that the following conditions are met: 025 026 * Redistributions of source code must retain the above copyright notice, this 027 list of conditions and the following disclaimer. 028 * Redistributions in binary form must reproduce the above copyright notice, 029 this list of conditions and the following disclaimer in the documentation 030 and/or other materials provided with the distribution. 031 * Neither the name of HL7 nor the names of its contributors may be used to 032 endorse or promote products derived from this software without specific 033 prior written permission. 034 035 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 036 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 037 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 038 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 039 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 040 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 041 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 042 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 043 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 044 POSSIBILITY OF SUCH DAMAGE. 045 046*/ 047// Generated on Sun, Feb 24, 2019 11:37+1100 for FHIR v4.0.0 048public class ConceptMap40_50 { 049 050 public static org.hl7.fhir.r5.model.ConceptMap convertConceptMap(org.hl7.fhir.r4.model.ConceptMap src) throws FHIRException { 051 if (src == null) 052 return null; 053 org.hl7.fhir.r5.model.ConceptMap tgt = new org.hl7.fhir.r5.model.ConceptMap(); 054 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyDomainResource(src, tgt); 055 if (src.hasUrl()) 056 tgt.setUrlElement(Uri40_50.convertUri(src.getUrlElement())); 057 if (src.hasIdentifier()) 058 tgt.addIdentifier(Identifier40_50.convertIdentifier(src.getIdentifier())); 059 if (src.hasVersion()) 060 tgt.setVersionElement(String40_50.convertString(src.getVersionElement())); 061 if (src.hasName()) 062 tgt.setNameElement(String40_50.convertString(src.getNameElement())); 063 if (src.hasTitle()) 064 tgt.setTitleElement(String40_50.convertString(src.getTitleElement())); 065 if (src.hasStatus()) 066 tgt.setStatusElement(Enumerations40_50.convertPublicationStatus(src.getStatusElement())); 067 if (src.hasExperimental()) 068 tgt.setExperimentalElement(Boolean40_50.convertBoolean(src.getExperimentalElement())); 069 if (src.hasDate()) 070 tgt.setDateElement(DateTime40_50.convertDateTime(src.getDateElement())); 071 if (src.hasPublisher()) 072 tgt.setPublisherElement(String40_50.convertString(src.getPublisherElement())); 073 for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) 074 tgt.addContact(ContactDetail40_50.convertContactDetail(t)); 075 if (src.hasDescription()) 076 tgt.setDescriptionElement(MarkDown40_50.convertMarkdown(src.getDescriptionElement())); 077 for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) 078 tgt.addUseContext(UsageContext40_50.convertUsageContext(t)); 079 for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) 080 tgt.addJurisdiction(CodeableConcept40_50.convertCodeableConcept(t)); 081 if (src.hasPurpose()) 082 tgt.setPurposeElement(MarkDown40_50.convertMarkdown(src.getPurposeElement())); 083 if (src.hasCopyright()) 084 tgt.setCopyrightElement(MarkDown40_50.convertMarkdown(src.getCopyrightElement())); 085 if (src.hasSource()) 086 tgt.setSource(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getSource())); 087 if (src.hasTarget()) 088 tgt.setTarget(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getTarget())); 089 for (org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent t : src.getGroup()) 090 tgt.addGroup(convertConceptMapGroupComponent(t)); 091 return tgt; 092 } 093 094 public static org.hl7.fhir.r4.model.ConceptMap convertConceptMap(org.hl7.fhir.r5.model.ConceptMap src) throws FHIRException { 095 if (src == null) 096 return null; 097 org.hl7.fhir.r4.model.ConceptMap tgt = new org.hl7.fhir.r4.model.ConceptMap(); 098 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyDomainResource(src, tgt); 099 if (src.hasUrl()) 100 tgt.setUrlElement(Uri40_50.convertUri(src.getUrlElement())); 101 if (src.hasIdentifier()) 102 tgt.setIdentifier(Identifier40_50.convertIdentifier(src.getIdentifierFirstRep())); 103 if (src.hasVersion()) 104 tgt.setVersionElement(String40_50.convertString(src.getVersionElement())); 105 if (src.hasName()) 106 tgt.setNameElement(String40_50.convertString(src.getNameElement())); 107 if (src.hasTitle()) 108 tgt.setTitleElement(String40_50.convertString(src.getTitleElement())); 109 if (src.hasStatus()) 110 tgt.setStatusElement(Enumerations40_50.convertPublicationStatus(src.getStatusElement())); 111 if (src.hasExperimental()) 112 tgt.setExperimentalElement(Boolean40_50.convertBoolean(src.getExperimentalElement())); 113 if (src.hasDate()) 114 tgt.setDateElement(DateTime40_50.convertDateTime(src.getDateElement())); 115 if (src.hasPublisher()) 116 tgt.setPublisherElement(String40_50.convertString(src.getPublisherElement())); 117 for (org.hl7.fhir.r5.model.ContactDetail t : src.getContact()) 118 tgt.addContact(ContactDetail40_50.convertContactDetail(t)); 119 if (src.hasDescription()) 120 tgt.setDescriptionElement(MarkDown40_50.convertMarkdown(src.getDescriptionElement())); 121 for (org.hl7.fhir.r5.model.UsageContext t : src.getUseContext()) 122 tgt.addUseContext(UsageContext40_50.convertUsageContext(t)); 123 for (org.hl7.fhir.r5.model.CodeableConcept t : src.getJurisdiction()) 124 tgt.addJurisdiction(CodeableConcept40_50.convertCodeableConcept(t)); 125 if (src.hasPurpose()) 126 tgt.setPurposeElement(MarkDown40_50.convertMarkdown(src.getPurposeElement())); 127 if (src.hasCopyright()) 128 tgt.setCopyrightElement(MarkDown40_50.convertMarkdown(src.getCopyrightElement())); 129 if (src.hasSource()) 130 tgt.setSource(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getSource())); 131 if (src.hasTarget()) 132 tgt.setTarget(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getTarget())); 133 for (org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupComponent t : src.getGroup()) 134 tgt.addGroup(convertConceptMapGroupComponent(t)); 135 return tgt; 136 } 137 138 public static org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupComponent convertConceptMapGroupComponent(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent src) throws FHIRException { 139 if (src == null) 140 return null; 141 org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupComponent tgt = new org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupComponent(); 142 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 143 if (src.hasSource() || src.hasSourceVersion()) 144 tgt.setSourceElement(convertUriAndVersionToCanonical(src.getSourceElement(), src.getSourceVersionElement())); 145 if (src.hasTarget() || src.hasTargetVersion()) 146 tgt.setTargetElement(convertUriAndVersionToCanonical(src.getTargetElement(), src.getTargetVersionElement())); 147 for (org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent t : src.getElement()) 148 tgt.addElement(convertSourceElementComponent(t)); 149 if (src.hasUnmapped()) 150 tgt.setUnmapped(convertConceptMapGroupUnmappedComponent(src.getUnmapped())); 151 return tgt; 152 } 153 154 private static CanonicalType convertUriAndVersionToCanonical(org.hl7.fhir.r4.model.UriType srcUri, org.hl7.fhir.r4.model.StringType srcVersion) { 155 if (srcUri == null && srcVersion == null) 156 return null; 157 org.hl7.fhir.r5.model.CanonicalType tgt = new org.hl7.fhir.r5.model.CanonicalType(); 158 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(srcUri == null ? srcVersion : srcUri, tgt); 159 if (srcUri.hasValue()) { 160 if (srcVersion.hasValue()) { 161 tgt.setValue(srcUri.getValue() + "|" + srcVersion.getValue()); 162 } else { 163 tgt.setValue(srcUri.getValue()); 164 } 165 } 166 return tgt; 167 } 168 169 public static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent convertConceptMapGroupComponent(org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupComponent src) throws FHIRException { 170 if (src == null) 171 return null; 172 org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent(); 173 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 174 if (src.hasSource()) { 175 CanonicalPair cp = new CanonicalPair(src.getSource()); 176 tgt.setSource(cp.getUrl()); 177 tgt.setSourceVersion(cp.getVersion()); 178 } 179 if (src.hasTarget()) { 180 CanonicalPair cp = new CanonicalPair(src.getTarget()); 181 tgt.setTarget(cp.getUrl()); 182 tgt.setTargetVersion(cp.getVersion()); 183 } 184 for (org.hl7.fhir.r5.model.ConceptMap.SourceElementComponent t : src.getElement()) 185 tgt.addElement(convertSourceElementComponent(t)); 186 if (src.hasUnmapped()) 187 tgt.setUnmapped(convertConceptMapGroupUnmappedComponent(src.getUnmapped())); 188 return tgt; 189 } 190 191 public static org.hl7.fhir.r5.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent src) throws FHIRException { 192 if (src == null) 193 return null; 194 org.hl7.fhir.r5.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r5.model.ConceptMap.SourceElementComponent(); 195 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 196 if (src.hasCode()) 197 tgt.setCodeElement(Code40_50.convertCode(src.getCodeElement())); 198 if (src.hasDisplay()) 199 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 200 for (org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent t : src.getTarget()) { 201 if (t.getEquivalence() == org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED) { 202 tgt.setNoMap(true); 203 } else { 204 tgt.addTarget(convertTargetElementComponent(t)); 205 } 206 } 207 return tgt; 208 } 209 210 public static org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r5.model.ConceptMap.SourceElementComponent src) throws FHIRException { 211 if (src == null) 212 return null; 213 org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent(); 214 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 215 if (src.hasCode()) 216 tgt.setCodeElement(Code40_50.convertCode(src.getCodeElement())); 217 if (src.hasDisplay()) 218 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 219 if (src.hasNoMap() && src.getNoMap() == true) { 220 tgt.addTarget(new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent().setEquivalence(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED)); 221 } else { 222 for (org.hl7.fhir.r5.model.ConceptMap.TargetElementComponent t : src.getTarget()) 223 tgt.addTarget(convertTargetElementComponent(t)); 224 } 225 return tgt; 226 } 227 228 public static org.hl7.fhir.r5.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent src) throws FHIRException { 229 if (src == null) 230 return null; 231 org.hl7.fhir.r5.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r5.model.ConceptMap.TargetElementComponent(); 232 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 233 if (src.hasCode()) 234 tgt.setCodeElement(Code40_50.convertCode(src.getCodeElement())); 235 if (src.hasDisplay()) 236 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 237 if (src.hasEquivalence()) 238 tgt.setRelationshipElement(convertConceptMapRelationship(src.getEquivalenceElement())); 239 if (src.hasComment()) 240 tgt.setCommentElement(String40_50.convertString(src.getCommentElement())); 241 for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) 242 tgt.addDependsOn(convertOtherElementComponent(t)); 243 for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getProduct()) 244 tgt.addProduct(convertOtherElementComponent(t)); 245 return tgt; 246 } 247 248 public static org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r5.model.ConceptMap.TargetElementComponent src) throws FHIRException { 249 if (src == null) 250 return null; 251 org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent(); 252 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 253 if (src.hasCode()) 254 tgt.setCodeElement(Code40_50.convertCode(src.getCodeElement())); 255 if (src.hasDisplay()) 256 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 257 if (src.hasRelationship()) 258 tgt.setEquivalenceElement(convertConceptMapEquivalence(src.getRelationshipElement())); 259 else 260 tgt.setEquivalence(ConceptMapEquivalence.RELATEDTO); 261 if (src.hasComment()) 262 tgt.setCommentElement(String40_50.convertString(src.getCommentElement())); 263 for (org.hl7.fhir.r5.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) 264 tgt.addDependsOn(convertOtherElementComponent(t)); 265 for (org.hl7.fhir.r5.model.ConceptMap.OtherElementComponent t : src.getProduct()) 266 tgt.addProduct(convertOtherElementComponent(t)); 267 return tgt; 268 } 269 270 public static org.hl7.fhir.r4.model.Enumeration<ConceptMapEquivalence> convertConceptMapEquivalence(Enumeration<ConceptMapRelationship> src) throws FHIRException { 271 if (src == null || src.isEmpty()) 272 return null; 273 org.hl7.fhir.r4.model.Enumeration<ConceptMapEquivalence> tgt = new org.hl7.fhir.r4.model.Enumeration<ConceptMapEquivalence>(new org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalenceEnumFactory()); 274 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt, VersionConvertorConstants.EXT_OLD_CONCEPTMAP_EQUIVALENCE); 275 if (src.hasExtension(VersionConvertorConstants.EXT_OLD_CONCEPTMAP_EQUIVALENCE)) { 276 tgt.setValueAsString(src.getExtensionString(VersionConvertorConstants.EXT_OLD_CONCEPTMAP_EQUIVALENCE)); 277 } else { 278 switch (src.getValue()) { 279 case RELATEDTO: 280 tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.RELATEDTO); 281 break; 282 case EQUIVALENT: 283 tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT); 284 break; 285 case SOURCEISNARROWERTHANTARGET: 286 tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER); 287 break; 288 case SOURCEISBROADERTHANTARGET: 289 tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER); 290 break; 291 case NOTRELATEDTO: 292 tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.DISJOINT); 293 break; 294 default: 295 tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NULL); 296 break; 297 } 298 } 299 return tgt; 300 } 301 302 public static Enumeration<ConceptMapRelationship> convertConceptMapRelationship(org.hl7.fhir.r4.model.Enumeration<ConceptMapEquivalence> src) throws FHIRException { 303 if (src == null || src.isEmpty()) 304 return null; 305 Enumeration<ConceptMapRelationship> tgt = new Enumeration<ConceptMapRelationship>(new Enumerations.ConceptMapRelationshipEnumFactory()); 306 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 307 ToolingExtensions.setCodeExtension(tgt, VersionConvertorConstants.EXT_OLD_CONCEPTMAP_EQUIVALENCE, src.getValueAsString()); 308 switch (src.getValue()) { 309 case EQUIVALENT: 310 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.EQUIVALENT); 311 break; 312 case EQUAL: 313 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.EQUIVALENT); 314 break; 315 case WIDER: 316 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); 317 break; 318 case SUBSUMES: 319 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); 320 break; 321 case NARROWER: 322 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); 323 break; 324 case SPECIALIZES: 325 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); 326 break; 327 case RELATEDTO: 328 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.RELATEDTO); 329 break; 330 case INEXACT: 331 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.RELATEDTO); 332 break; 333 case UNMATCHED: 334 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.NULL); 335 break; 336 case DISJOINT: 337 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.NOTRELATEDTO); 338 break; 339 default: 340 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.NULL); 341 break; 342 } 343 return tgt; 344 } 345 346 public static org.hl7.fhir.r5.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent src) throws FHIRException { 347 if (src == null) 348 return null; 349 org.hl7.fhir.r5.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r5.model.ConceptMap.OtherElementComponent(); 350 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 351 if (src.hasProperty()) 352 tgt.setPropertyElement(Uri40_50.convertUri(src.getPropertyElement())); 353 if (src.hasSystem()) 354 tgt.setSystemElement(Canonical40_50.convertCanonical(src.getSystemElement())); 355 if (src.hasValue()) 356 tgt.setValueElement(String40_50.convertString(src.getValueElement())); 357 if (src.hasDisplay()) 358 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 359 return tgt; 360 } 361 362 public static org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r5.model.ConceptMap.OtherElementComponent src) throws FHIRException { 363 if (src == null) 364 return null; 365 org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent(); 366 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 367 if (src.hasProperty()) 368 tgt.setPropertyElement(Uri40_50.convertUri(src.getPropertyElement())); 369 if (src.hasSystem()) 370 tgt.setSystemElement(Canonical40_50.convertCanonical(src.getSystemElement())); 371 if (src.hasValue()) 372 tgt.setValueElement(String40_50.convertString(src.getValueElement())); 373 if (src.hasDisplay()) 374 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 375 return tgt; 376 } 377 378 public static org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupUnmappedComponent convertConceptMapGroupUnmappedComponent(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent src) throws FHIRException { 379 if (src == null) 380 return null; 381 org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupUnmappedComponent tgt = new org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupUnmappedComponent(); 382 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 383 if (src.hasMode()) 384 tgt.setModeElement(convertConceptMapGroupUnmappedMode(src.getModeElement())); 385 if (src.hasCode()) 386 tgt.setCodeElement(Code40_50.convertCode(src.getCodeElement())); 387 if (src.hasDisplay()) 388 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 389 if (src.hasUrl()) 390 tgt.setUrlElement(Canonical40_50.convertCanonical(src.getUrlElement())); 391 return tgt; 392 } 393 394 public static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent convertConceptMapGroupUnmappedComponent(org.hl7.fhir.r5.model.ConceptMap.ConceptMapGroupUnmappedComponent src) throws FHIRException { 395 if (src == null) 396 return null; 397 org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent(); 398 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 399 if (src.hasMode()) 400 tgt.setModeElement(convertConceptMapGroupUnmappedMode(src.getModeElement())); 401 if (src.hasCode()) 402 tgt.setCodeElement(Code40_50.convertCode(src.getCodeElement())); 403 if (src.hasDisplay()) 404 tgt.setDisplayElement(String40_50.convertString(src.getDisplayElement())); 405 if (src.hasUrl()) 406 tgt.setUrlElement(Canonical40_50.convertCanonical(src.getUrlElement())); 407 return tgt; 408 } 409 410 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedMode> convertConceptMapGroupUnmappedMode(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode> src) throws FHIRException { 411 if (src == null || src.isEmpty()) 412 return null; 413 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedMode> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedModeEnumFactory()); 414 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 415 switch (src.getValue()) { 416 case PROVIDED: 417 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedMode.PROVIDED); 418 break; 419 case FIXED: 420 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedMode.FIXED); 421 break; 422 case OTHERMAP: 423 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedMode.OTHERMAP); 424 break; 425 default: 426 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedMode.NULL); 427 break; 428 } 429 return tgt; 430 } 431 432 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode> convertConceptMapGroupUnmappedMode(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ConceptMapGroupUnmappedMode> src) throws FHIRException { 433 if (src == null || src.isEmpty()) 434 return null; 435 org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedModeEnumFactory()); 436 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 437 switch (src.getValue()) { 438 case PROVIDED: 439 tgt.setValue(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.PROVIDED); 440 break; 441 case FIXED: 442 tgt.setValue(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.FIXED); 443 break; 444 case OTHERMAP: 445 tgt.setValue(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.OTHERMAP); 446 break; 447 default: 448 tgt.setValue(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.NULL); 449 break; 450 } 451 return tgt; 452 } 453}