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