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