001package org.hl7.fhir.convertors.conv30_50.resources30_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext10_50; 004import org.hl7.fhir.convertors.context.ConversionContext30_50; 005import org.hl7.fhir.convertors.context.ConversionContext40_50; 006import org.hl7.fhir.convertors.conv30_50.datatypes30_50.Narrative30_50; 007import org.hl7.fhir.convertors.conv30_50.datatypes30_50.Reference30_50; 008import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.CodeableConcept30_50; 009import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Identifier30_50; 010import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Period30_50; 011import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.DateTime30_50; 012import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.String30_50; 013import org.hl7.fhir.exceptions.FHIRException; 014import org.hl7.fhir.r5.model.RelatedArtifact; 015 016import java.util.Collections; 017 018public class Composition30_50 { 019 020 public static org.hl7.fhir.r5.model.Composition convertComposition(org.hl7.fhir.dstu3.model.Composition src) throws FHIRException { 021 if (src == null) 022 return null; 023 org.hl7.fhir.r5.model.Composition tgt = new org.hl7.fhir.r5.model.Composition(); 024 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyDomainResource(src, tgt); 025 if (src.hasIdentifier()) 026 tgt.setIdentifier(Identifier30_50.convertIdentifier(src.getIdentifier())); 027 if (src.hasStatus()) 028 tgt.setStatusElement(convertCompositionStatus(src.getStatusElement())); 029 if (src.hasType()) 030 tgt.setType(CodeableConcept30_50.convertCodeableConcept(src.getType())); 031 if (src.hasClass_()) 032 tgt.addCategory(CodeableConcept30_50.convertCodeableConcept(src.getClass_())); 033 if (src.hasSubject()) 034 tgt.setSubject(Reference30_50.convertReference(src.getSubject())); 035 if (src.hasEncounter()) 036 tgt.setEncounter(Reference30_50.convertReference(src.getEncounter())); 037 if (src.hasDate()) 038 tgt.setDateElement(DateTime30_50.convertDateTime(src.getDateElement())); 039 for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) tgt.addAuthor(Reference30_50.convertReference(t)); 040 if (src.hasTitle()) 041 tgt.setTitleElement(String30_50.convertString(src.getTitleElement())); 042 if (src.hasConfidentiality()) 043 tgt.setConfidentialityElement(convertDocumentConfidentiality(src.getConfidentialityElement())); 044 for (org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent t : src.getAttester()) 045 tgt.addAttester(convertCompositionAttesterComponent(t)); 046 if (src.hasCustodian()) 047 tgt.setCustodian(Reference30_50.convertReference(src.getCustodian())); 048 for (org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent t : src.getRelatesTo()) 049 tgt.addRelatesTo(convertCompositionRelatesToComponent(t)); 050 for (org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent t : src.getEvent()) 051 tgt.addEvent(convertCompositionEventComponent(t)); 052 for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) 053 tgt.addSection(convertSectionComponent(t)); 054 return tgt; 055 } 056 057 public static org.hl7.fhir.dstu3.model.Composition convertComposition(org.hl7.fhir.r5.model.Composition src) throws FHIRException { 058 if (src == null) 059 return null; 060 org.hl7.fhir.dstu3.model.Composition tgt = new org.hl7.fhir.dstu3.model.Composition(); 061 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyDomainResource(src, tgt); 062 if (src.hasIdentifier()) 063 tgt.setIdentifier(Identifier30_50.convertIdentifier(src.getIdentifier())); 064 if (src.hasStatus()) 065 tgt.setStatusElement(convertCompositionStatus(src.getStatusElement())); 066 if (src.hasType()) 067 tgt.setType(CodeableConcept30_50.convertCodeableConcept(src.getType())); 068 if (src.hasCategory()) 069 tgt.setClass_(CodeableConcept30_50.convertCodeableConcept(src.getCategoryFirstRep())); 070 if (src.hasSubject()) 071 tgt.setSubject(Reference30_50.convertReference(src.getSubject())); 072 if (src.hasEncounter()) 073 tgt.setEncounter(Reference30_50.convertReference(src.getEncounter())); 074 if (src.hasDate()) 075 tgt.setDateElement(DateTime30_50.convertDateTime(src.getDateElement())); 076 for (org.hl7.fhir.r5.model.Reference t : src.getAuthor()) tgt.addAuthor(Reference30_50.convertReference(t)); 077 if (src.hasTitle()) 078 tgt.setTitleElement(String30_50.convertString(src.getTitleElement())); 079 if (src.hasConfidentiality()) 080 tgt.setConfidentialityElement(convertDocumentConfidentiality(src.getConfidentialityElement())); 081 for (org.hl7.fhir.r5.model.Composition.CompositionAttesterComponent t : src.getAttester()) 082 tgt.addAttester(convertCompositionAttesterComponent(t)); 083 if (src.hasCustodian()) 084 tgt.setCustodian(Reference30_50.convertReference(src.getCustodian())); 085 for (RelatedArtifact t : src.getRelatesTo()) 086 tgt.addRelatesTo(convertCompositionRelatesToComponent(t)); 087 for (org.hl7.fhir.r5.model.Composition.CompositionEventComponent t : src.getEvent()) 088 tgt.addEvent(convertCompositionEventComponent(t)); 089 for (org.hl7.fhir.r5.model.Composition.SectionComponent t : src.getSection()) 090 tgt.addSection(convertSectionComponent(t)); 091 return tgt; 092 } 093 094 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode> convertCompositionAttestationMode(org.hl7.fhir.r5.model.CodeableConcept src) throws FHIRException { 095 if (src == null || src.isEmpty()) 096 return null; 097 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Composition.CompositionAttestationModeEnumFactory()); 098 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 099 switch (src.getCode("http://hl7.org/fhir/composition-attestation-mode")) { 100 case "personal": 101 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PERSONAL); 102 break; 103 case "professional": 104 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PROFESSIONAL); 105 break; 106 case "legal": 107 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.LEGAL); 108 break; 109 case "official": 110 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.OFFICIAL); 111 break; 112 default: 113 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.NULL); 114 break; 115 } 116 return tgt; 117 } 118 119 120 static public org.hl7.fhir.r5.model.CodeableConcept convertCompositionAttestationMode(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode> src) throws FHIRException { 121 if (src == null || src.isEmpty()) 122 return null; 123 org.hl7.fhir.r5.model.CodeableConcept tgt = new org.hl7.fhir.r5.model.CodeableConcept(); 124 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 125 switch (src.getValue()) { 126 case PERSONAL: 127 tgt.addCoding().setSystem("http://hl7.org/fhir/composition-attestation-mode").setCode("personal"); 128 break; 129 case PROFESSIONAL: 130 tgt.addCoding().setSystem("http://hl7.org/fhir/composition-attestation-mode").setCode("professional"); 131 break; 132 case LEGAL: 133 tgt.addCoding().setSystem("http://hl7.org/fhir/composition-attestation-mode").setCode("legal"); 134 break; 135 case OFFICIAL: 136 tgt.addCoding().setSystem("http://hl7.org/fhir/composition-attestation-mode").setCode("official"); 137 break; 138 default: 139 break; 140 } 141 return tgt; 142 } 143 144 public static org.hl7.fhir.r5.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent src) throws FHIRException { 145 if (src == null) 146 return null; 147 org.hl7.fhir.r5.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.r5.model.Composition.CompositionAttesterComponent(); 148 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 149 if (src.hasMode()) 150 tgt.setMode(convertCompositionAttestationMode(src.getMode().get(0))); 151 if (src.hasTime()) 152 tgt.setTimeElement(DateTime30_50.convertDateTime(src.getTimeElement())); 153 if (src.hasParty()) 154 tgt.setParty(Reference30_50.convertReference(src.getParty())); 155 return tgt; 156 } 157 158 public static org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.r5.model.Composition.CompositionAttesterComponent src) throws FHIRException { 159 if (src == null) 160 return null; 161 org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent(); 162 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 163 if (src.hasMode()) 164 tgt.setMode(Collections.singletonList(convertCompositionAttestationMode(src.getMode()))); 165 if (src.hasTime()) 166 tgt.setTimeElement(DateTime30_50.convertDateTime(src.getTimeElement())); 167 if (src.hasParty()) 168 tgt.setParty(Reference30_50.convertReference(src.getParty())); 169 return tgt; 170 } 171 172 public static org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.r5.model.Composition.CompositionEventComponent src) throws FHIRException { 173 if (src == null) 174 return null; 175 org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent(); 176 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 177 for (org.hl7.fhir.r5.model.CodeableConcept t : src.getCode()) 178 tgt.addCode(CodeableConcept30_50.convertCodeableConcept(t)); 179 if (src.hasPeriod()) 180 tgt.setPeriod(Period30_50.convertPeriod(src.getPeriod())); 181 for (org.hl7.fhir.r5.model.Reference t : src.getDetail()) tgt.addDetail(Reference30_50.convertReference(t)); 182 return tgt; 183 } 184 185 public static org.hl7.fhir.r5.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent src) throws FHIRException { 186 if (src == null) 187 return null; 188 org.hl7.fhir.r5.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.r5.model.Composition.CompositionEventComponent(); 189 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 190 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) 191 tgt.addCode(CodeableConcept30_50.convertCodeableConcept(t)); 192 if (src.hasPeriod()) 193 tgt.setPeriod(Period30_50.convertPeriod(src.getPeriod())); 194 for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) tgt.addDetail(Reference30_50.convertReference(t)); 195 return tgt; 196 } 197 198 public static org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent convertCompositionRelatesToComponent(org.hl7.fhir.r5.model.RelatedArtifact src) throws FHIRException { 199 if (src == null) 200 return null; 201 org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent(); 202 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 203 if (src.hasType()) 204 tgt.setCodeElement(convertDocumentRelationshipType(src.getTypeElement())); 205 if (src.hasResourceReference()) 206 tgt.setTarget(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getResourceReference())); 207 return tgt; 208 } 209 210 public static org.hl7.fhir.r5.model.RelatedArtifact convertCompositionRelatesToComponent(org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent src) throws FHIRException { 211 if (src == null) 212 return null; 213 org.hl7.fhir.r5.model.RelatedArtifact tgt = new org.hl7.fhir.r5.model.RelatedArtifact(); 214 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 215 if (src.hasCode()) 216 tgt.setTypeElement(convertDocumentRelationshipType(src.getCodeElement())); 217 if (src.hasTargetReference()) 218 tgt.setResourceReference(Reference30_50.convertReference(src.getTargetReference())); 219 return tgt; 220 } 221 222 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType> convertDocumentRelationshipType(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType> src) throws FHIRException { 223 if (src == null) 224 return null; 225 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipTypeEnumFactory()); 226 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 227 switch (src.getValue()) { 228 case REPLACES: 229 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.REPLACES); 230 break; 231 case TRANSFORMS: 232 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.TRANSFORMS); 233 break; 234 case SIGNS: 235 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.SIGNS); 236 break; 237 case APPENDS: 238 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.APPENDS); 239 break; 240 default: 241 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.NULL); 242 break; 243 } 244 return tgt; 245 } 246 247 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType> convertDocumentRelationshipType(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType> src) throws FHIRException { 248 if (src == null) 249 return null; 250 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactTypeEnumFactory()); 251 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 252 switch (src.getValue()) { 253 case REPLACES: 254 tgt.setValue(org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType.REPLACES); 255 break; 256 case TRANSFORMS: 257 tgt.setValue(org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType.TRANSFORMS); 258 break; 259 case SIGNS: 260 tgt.setValue(org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType.SIGNS); 261 break; 262 case APPENDS: 263 tgt.setValue(org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType.APPENDS); 264 break; 265 default: 266 tgt.setValue(org.hl7.fhir.r5.model.RelatedArtifact.RelatedArtifactType.NULL); 267 break; 268 } 269 return tgt; 270 } 271 272 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.CompositionStatus> convertCompositionStatus(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompositionStatus> src) throws FHIRException { 273 if (src == null || src.isEmpty()) 274 return null; 275 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.CompositionStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Composition.CompositionStatusEnumFactory()); 276 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 277 switch (src.getValue()) { 278 case PRELIMINARY: 279 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionStatus.PRELIMINARY); 280 break; 281 case FINAL: 282 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionStatus.FINAL); 283 break; 284 case AMENDED: 285 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionStatus.AMENDED); 286 break; 287 case ENTEREDINERROR: 288 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionStatus.ENTEREDINERROR); 289 break; 290 default: 291 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.CompositionStatus.NULL); 292 break; 293 } 294 return tgt; 295 } 296 297 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompositionStatus> convertCompositionStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.CompositionStatus> src) throws FHIRException { 298 if (src == null || src.isEmpty()) 299 return null; 300 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompositionStatus> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.CompositionStatusEnumFactory()); 301 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 302 switch (src.getValue()) { 303 case PRELIMINARY: 304 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompositionStatus.PRELIMINARY); 305 break; 306 case FINAL: 307 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompositionStatus.FINAL); 308 break; 309 case AMENDED: 310 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompositionStatus.AMENDED); 311 break; 312 case ENTEREDINERROR: 313 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompositionStatus.ENTEREDINERROR); 314 break; 315 default: 316 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompositionStatus.NULL); 317 break; 318 } 319 return tgt; 320 } 321 322 static public org.hl7.fhir.r5.model.CodeType convertDocumentConfidentiality(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality> src) throws FHIRException { 323 if (src == null || src.isEmpty()) 324 return null; 325 org.hl7.fhir.r5.model.CodeType tgt = new org.hl7.fhir.r5.model.CodeType(); 326 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 327 tgt.setValue(src.getValue().toCode()); 328 return tgt; 329 } 330 331 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality> convertDocumentConfidentiality(org.hl7.fhir.r5.model.CodeType src) throws FHIRException { 332 if (src == null || src.isEmpty()) 333 return null; 334 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Composition.DocumentConfidentialityEnumFactory()); 335 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 336 switch (src.getValue()) { 337 case "U": 338 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.U); 339 break; 340 case "L": 341 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.L); 342 break; 343 case "M": 344 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.M); 345 break; 346 case "N": 347 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.N); 348 break; 349 case "R": 350 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.R); 351 break; 352 case "V": 353 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.V); 354 break; 355 default: 356 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.NULL); 357 break; 358 } 359 return tgt; 360 } 361 362 public static org.hl7.fhir.dstu3.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.r5.model.Composition.SectionComponent src) throws FHIRException { 363 if (src == null) 364 return null; 365 org.hl7.fhir.dstu3.model.Composition.SectionComponent tgt = new org.hl7.fhir.dstu3.model.Composition.SectionComponent(); 366 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 367 if (src.hasTitle()) 368 tgt.setTitleElement(String30_50.convertString(src.getTitleElement())); 369 if (src.hasCode()) 370 tgt.setCode(CodeableConcept30_50.convertCodeableConcept(src.getCode())); 371 if (src.hasText()) 372 tgt.setText(Narrative30_50.convertNarrative(src.getText())); 373 if (src.hasMode()) 374 tgt.setModeElement(convertSectionMode(src.getModeElement())); 375 if (src.hasOrderedBy()) 376 tgt.setOrderedBy(CodeableConcept30_50.convertCodeableConcept(src.getOrderedBy())); 377 for (org.hl7.fhir.r5.model.Reference t : src.getEntry()) tgt.addEntry(Reference30_50.convertReference(t)); 378 if (src.hasEmptyReason()) 379 tgt.setEmptyReason(CodeableConcept30_50.convertCodeableConcept(src.getEmptyReason())); 380 for (org.hl7.fhir.r5.model.Composition.SectionComponent t : src.getSection()) 381 tgt.addSection(convertSectionComponent(t)); 382 return tgt; 383 } 384 385 public static org.hl7.fhir.r5.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.dstu3.model.Composition.SectionComponent src) throws FHIRException { 386 if (src == null) 387 return null; 388 org.hl7.fhir.r5.model.Composition.SectionComponent tgt = new org.hl7.fhir.r5.model.Composition.SectionComponent(); 389 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 390 if (src.hasTitle()) 391 tgt.setTitleElement(String30_50.convertString(src.getTitleElement())); 392 if (src.hasCode()) 393 tgt.setCode(CodeableConcept30_50.convertCodeableConcept(src.getCode())); 394 if (src.hasText()) 395 tgt.setText(Narrative30_50.convertNarrative(src.getText())); 396 if (src.hasMode()) 397 tgt.setModeElement(convertSectionMode(src.getModeElement())); 398 if (src.hasOrderedBy()) 399 tgt.setOrderedBy(CodeableConcept30_50.convertCodeableConcept(src.getOrderedBy())); 400 for (org.hl7.fhir.dstu3.model.Reference t : src.getEntry()) tgt.addEntry(Reference30_50.convertReference(t)); 401 if (src.hasEmptyReason()) 402 tgt.setEmptyReason(CodeableConcept30_50.convertCodeableConcept(src.getEmptyReason())); 403 for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) 404 tgt.addSection(convertSectionComponent(t)); 405 return tgt; 406 } 407 408 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.SectionMode> convertSectionMode(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ListMode> src) throws FHIRException { 409 if (src == null || src.isEmpty()) 410 return null; 411 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.SectionMode> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Composition.SectionModeEnumFactory()); 412 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 413 switch (src.getValue()) { 414 case WORKING: 415 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.SectionMode.WORKING); 416 break; 417 case SNAPSHOT: 418 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.SectionMode.SNAPSHOT); 419 break; 420 case CHANGES: 421 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.SectionMode.CHANGES); 422 break; 423 default: 424 tgt.setValue(org.hl7.fhir.dstu3.model.Composition.SectionMode.NULL); 425 break; 426 } 427 return tgt; 428 } 429 430 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ListMode> convertSectionMode(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Composition.SectionMode> src) throws FHIRException { 431 if (src == null || src.isEmpty()) 432 return null; 433 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ListMode> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.ListModeEnumFactory()); 434 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 435 switch (src.getValue()) { 436 case WORKING: 437 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ListMode.WORKING); 438 break; 439 case SNAPSHOT: 440 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ListMode.SNAPSHOT); 441 break; 442 case CHANGES: 443 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ListMode.CHANGES); 444 break; 445 default: 446 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ListMode.NULL); 447 break; 448 } 449 return tgt; 450 } 451}