001package org.hl7.fhir.convertors.conv43_50.resources43_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext43_50; 004import org.hl7.fhir.convertors.conv43_50.datatypes43_50.general43_50.Attachment43_50; 005import org.hl7.fhir.convertors.conv43_50.datatypes43_50.general43_50.CodeableConcept43_50; 006import org.hl7.fhir.convertors.conv43_50.datatypes43_50.general43_50.Identifier43_50; 007import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Instant43_50; 008import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.String43_50; 009import org.hl7.fhir.convertors.conv43_50.datatypes43_50.special43_50.Reference43_50; 010import org.hl7.fhir.exceptions.FHIRException; 011 012/* 013 Copyright (c) 2011+, HL7, Inc. 014 All rights reserved. 015 016 Redistribution and use in source and binary forms, with or without modification, 017 are permitted provided that the following conditions are met: 018 019 * Redistributions of source code must retain the above copyright notice, this 020 list of conditions and the following disclaimer. 021 * Redistributions in binary form must reproduce the above copyright notice, 022 this list of conditions and the following disclaimer in the documentation 023 and/or other materials provided with the distribution. 024 * Neither the name of HL7 nor the names of its contributors may be used to 025 endorse or promote products derived from this software without specific 026 prior written permission. 027 028 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 029 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 030 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 031 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 032 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 033 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 034 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 035 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 036 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 037 POSSIBILITY OF SUCH DAMAGE. 038 039*/ 040// Generated on Sun, Feb 24, 2019 11:37+1100 for FHIR v4.0.0 041public class DiagnosticReport43_50 { 042 043 public static org.hl7.fhir.r5.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.r4b.model.DiagnosticReport src) throws FHIRException { 044 if (src == null) 045 return null; 046 org.hl7.fhir.r5.model.DiagnosticReport tgt = new org.hl7.fhir.r5.model.DiagnosticReport(); 047 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyDomainResource(src, tgt); 048 for (org.hl7.fhir.r4b.model.Identifier t : src.getIdentifier()) 049 tgt.addIdentifier(Identifier43_50.convertIdentifier(t)); 050 for (org.hl7.fhir.r4b.model.Reference t : src.getBasedOn()) tgt.addBasedOn(Reference43_50.convertReference(t)); 051 if (src.hasStatus()) 052 tgt.setStatusElement(convertDiagnosticReportStatus(src.getStatusElement())); 053 for (org.hl7.fhir.r4b.model.CodeableConcept t : src.getCategory()) 054 tgt.addCategory(CodeableConcept43_50.convertCodeableConcept(t)); 055 if (src.hasCode()) 056 tgt.setCode(CodeableConcept43_50.convertCodeableConcept(src.getCode())); 057 if (src.hasSubject()) 058 tgt.setSubject(Reference43_50.convertReference(src.getSubject())); 059 if (src.hasEncounter()) 060 tgt.setEncounter(Reference43_50.convertReference(src.getEncounter())); 061 if (src.hasEffective()) 062 tgt.setEffective(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getEffective())); 063 if (src.hasIssued()) 064 tgt.setIssuedElement(Instant43_50.convertInstant(src.getIssuedElement())); 065 for (org.hl7.fhir.r4b.model.Reference t : src.getPerformer()) tgt.addPerformer(Reference43_50.convertReference(t)); 066 for (org.hl7.fhir.r4b.model.Reference t : src.getResultsInterpreter()) 067 tgt.addResultsInterpreter(Reference43_50.convertReference(t)); 068 for (org.hl7.fhir.r4b.model.Reference t : src.getSpecimen()) tgt.addSpecimen(Reference43_50.convertReference(t)); 069 for (org.hl7.fhir.r4b.model.Reference t : src.getResult()) tgt.addResult(Reference43_50.convertReference(t)); 070 for (org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportMediaComponent t : src.getMedia()) 071 tgt.addMedia(convertDiagnosticReportMediaComponent(t)); 072 if (src.hasConclusion()) 073 tgt.setConclusionElement(String43_50.convertStringToMarkdown(src.getConclusionElement())); 074 for (org.hl7.fhir.r4b.model.CodeableConcept t : src.getConclusionCode()) 075 tgt.addConclusionCode(CodeableConcept43_50.convertCodeableConcept(t)); 076 for (org.hl7.fhir.r4b.model.Attachment t : src.getPresentedForm()) 077 tgt.addPresentedForm(Attachment43_50.convertAttachment(t)); 078 return tgt; 079 } 080 081 public static org.hl7.fhir.r4b.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.r5.model.DiagnosticReport src) throws FHIRException { 082 if (src == null) 083 return null; 084 org.hl7.fhir.r4b.model.DiagnosticReport tgt = new org.hl7.fhir.r4b.model.DiagnosticReport(); 085 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyDomainResource(src, tgt); 086 for (org.hl7.fhir.r5.model.Identifier t : src.getIdentifier()) 087 tgt.addIdentifier(Identifier43_50.convertIdentifier(t)); 088 for (org.hl7.fhir.r5.model.Reference t : src.getBasedOn()) tgt.addBasedOn(Reference43_50.convertReference(t)); 089 if (src.hasStatus()) 090 tgt.setStatusElement(convertDiagnosticReportStatus(src.getStatusElement())); 091 for (org.hl7.fhir.r5.model.CodeableConcept t : src.getCategory()) 092 tgt.addCategory(CodeableConcept43_50.convertCodeableConcept(t)); 093 if (src.hasCode()) 094 tgt.setCode(CodeableConcept43_50.convertCodeableConcept(src.getCode())); 095 if (src.hasSubject()) 096 tgt.setSubject(Reference43_50.convertReference(src.getSubject())); 097 if (src.hasEncounter()) 098 tgt.setEncounter(Reference43_50.convertReference(src.getEncounter())); 099 if (src.hasEffective()) 100 tgt.setEffective(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getEffective())); 101 if (src.hasIssued()) 102 tgt.setIssuedElement(Instant43_50.convertInstant(src.getIssuedElement())); 103 for (org.hl7.fhir.r5.model.Reference t : src.getPerformer()) tgt.addPerformer(Reference43_50.convertReference(t)); 104 for (org.hl7.fhir.r5.model.Reference t : src.getResultsInterpreter()) 105 tgt.addResultsInterpreter(Reference43_50.convertReference(t)); 106 for (org.hl7.fhir.r5.model.Reference t : src.getSpecimen()) tgt.addSpecimen(Reference43_50.convertReference(t)); 107 for (org.hl7.fhir.r5.model.Reference t : src.getResult()) tgt.addResult(Reference43_50.convertReference(t)); 108 for (org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportMediaComponent t : src.getMedia()) 109 tgt.addMedia(convertDiagnosticReportMediaComponent(t)); 110 if (src.hasConclusion()) 111 tgt.setConclusionElement(String43_50.convertString(src.getConclusionElement())); 112 for (org.hl7.fhir.r5.model.CodeableConcept t : src.getConclusionCode()) 113 tgt.addConclusionCode(CodeableConcept43_50.convertCodeableConcept(t)); 114 for (org.hl7.fhir.r5.model.Attachment t : src.getPresentedForm()) 115 tgt.addPresentedForm(Attachment43_50.convertAttachment(t)); 116 return tgt; 117 } 118 119 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus> convertDiagnosticReportStatus(org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus> src) throws FHIRException { 120 if (src == null || src.isEmpty()) 121 return null; 122 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatusEnumFactory()); 123 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 124 switch (src.getValue()) { 125 case REGISTERED: 126 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED); 127 break; 128 case PARTIAL: 129 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL); 130 break; 131 case PRELIMINARY: 132 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.PRELIMINARY); 133 break; 134 case FINAL: 135 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.FINAL); 136 break; 137 case AMENDED: 138 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.AMENDED); 139 break; 140 case CORRECTED: 141 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED); 142 break; 143 case APPENDED: 144 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.APPENDED); 145 break; 146 case CANCELLED: 147 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED); 148 break; 149 case ENTEREDINERROR: 150 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR); 151 break; 152 case UNKNOWN: 153 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.UNKNOWN); 154 break; 155 default: 156 tgt.setValue(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus.NULL); 157 break; 158 } 159 return tgt; 160 } 161 162 static public org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus> convertDiagnosticReportStatus(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportStatus> src) throws FHIRException { 163 if (src == null || src.isEmpty()) 164 return null; 165 org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus> tgt = new org.hl7.fhir.r4b.model.Enumeration<>(new org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatusEnumFactory()); 166 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 167 switch (src.getValue()) { 168 case REGISTERED: 169 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED); 170 break; 171 case PARTIAL: 172 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL); 173 break; 174 case PRELIMINARY: 175 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.PRELIMINARY); 176 break; 177 case FINAL: 178 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.FINAL); 179 break; 180 case AMENDED: 181 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.AMENDED); 182 break; 183 case CORRECTED: 184 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED); 185 break; 186 case APPENDED: 187 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.APPENDED); 188 break; 189 case CANCELLED: 190 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED); 191 break; 192 case ENTEREDINERROR: 193 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR); 194 break; 195 case UNKNOWN: 196 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.UNKNOWN); 197 break; 198 default: 199 tgt.setValue(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportStatus.NULL); 200 break; 201 } 202 return tgt; 203 } 204 205 public static org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportMediaComponent convertDiagnosticReportMediaComponent(org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportMediaComponent src) throws FHIRException { 206 if (src == null) 207 return null; 208 org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportMediaComponent tgt = new org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportMediaComponent(); 209 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 210 if (src.hasComment()) 211 tgt.setCommentElement(String43_50.convertString(src.getCommentElement())); 212 if (src.hasLink()) 213 tgt.setLink(Reference43_50.convertReference(src.getLink())); 214 return tgt; 215 } 216 217 public static org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportMediaComponent convertDiagnosticReportMediaComponent(org.hl7.fhir.r5.model.DiagnosticReport.DiagnosticReportMediaComponent src) throws FHIRException { 218 if (src == null) 219 return null; 220 org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportMediaComponent tgt = new org.hl7.fhir.r4b.model.DiagnosticReport.DiagnosticReportMediaComponent(); 221 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 222 if (src.hasComment()) 223 tgt.setCommentElement(String43_50.convertString(src.getCommentElement())); 224 if (src.hasLink()) 225 tgt.setLink(Reference43_50.convertReference(src.getLink())); 226 return tgt; 227 } 228}