001package org.hl7.fhir.convertors.conv30_40.resources30_40; 002 003import org.hl7.fhir.convertors.context.ConversionContext30_40; 004import org.hl7.fhir.convertors.conv30_40.datatypes30_40.Reference30_40; 005import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Annotation30_40; 006import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.CodeableConcept30_40; 007import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Identifier30_40; 008import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.DateTime30_40; 009import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.String30_40; 010import org.hl7.fhir.exceptions.FHIRException; 011 012public class ClinicalImpression30_40 { 013 014 public static org.hl7.fhir.dstu3.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.r4.model.ClinicalImpression src) throws FHIRException { 015 if (src == null) 016 return null; 017 org.hl7.fhir.dstu3.model.ClinicalImpression tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression(); 018 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 019 for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) 020 tgt.addIdentifier(Identifier30_40.convertIdentifier(t)); 021 if (src.hasStatus()) 022 tgt.setStatusElement(convertClinicalImpressionStatus(src.getStatusElement())); 023 if (src.hasCode()) 024 tgt.setCode(CodeableConcept30_40.convertCodeableConcept(src.getCode())); 025 if (src.hasDescription()) 026 tgt.setDescriptionElement(String30_40.convertString(src.getDescriptionElement())); 027 if (src.hasSubject()) 028 tgt.setSubject(Reference30_40.convertReference(src.getSubject())); 029 if (src.hasEncounter()) 030 tgt.setContext(Reference30_40.convertReference(src.getEncounter())); 031 if (src.hasEffective()) 032 tgt.setEffective(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getEffective())); 033 if (src.hasDateElement()) 034 tgt.setDateElement(DateTime30_40.convertDateTime(src.getDateElement())); 035 if (src.hasAssessor()) 036 tgt.setAssessor(Reference30_40.convertReference(src.getAssessor())); 037 if (src.hasPrevious()) 038 tgt.setPrevious(Reference30_40.convertReference(src.getPrevious())); 039 for (org.hl7.fhir.r4.model.Reference t : src.getProblem()) tgt.addProblem(Reference30_40.convertReference(t)); 040 for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent t : src.getInvestigation()) 041 tgt.addInvestigation(convertClinicalImpressionInvestigationComponent(t)); 042 for (org.hl7.fhir.r4.model.UriType t : src.getProtocol()) tgt.addProtocol(t.getValue()); 043 if (src.hasSummary()) 044 tgt.setSummaryElement(String30_40.convertString(src.getSummaryElement())); 045 for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) 046 tgt.addFinding(convertClinicalImpressionFindingComponent(t)); 047 for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPrognosisCodeableConcept()) 048 tgt.addPrognosisCodeableConcept(CodeableConcept30_40.convertCodeableConcept(t)); 049 for (org.hl7.fhir.r4.model.Reference t : src.getPrognosisReference()) 050 tgt.addPrognosisReference(Reference30_40.convertReference(t)); 051 for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) tgt.addNote(Annotation30_40.convertAnnotation(t)); 052 return tgt; 053 } 054 055 public static org.hl7.fhir.r4.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.dstu3.model.ClinicalImpression src) throws FHIRException { 056 if (src == null) 057 return null; 058 org.hl7.fhir.r4.model.ClinicalImpression tgt = new org.hl7.fhir.r4.model.ClinicalImpression(); 059 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 060 for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) 061 tgt.addIdentifier(Identifier30_40.convertIdentifier(t)); 062 if (src.hasStatus()) 063 tgt.setStatusElement(convertClinicalImpressionStatus(src.getStatusElement())); 064 if (src.hasCode()) 065 tgt.setCode(CodeableConcept30_40.convertCodeableConcept(src.getCode())); 066 if (src.hasDescription()) 067 tgt.setDescriptionElement(String30_40.convertString(src.getDescriptionElement())); 068 if (src.hasSubject()) 069 tgt.setSubject(Reference30_40.convertReference(src.getSubject())); 070 if (src.hasContext()) 071 tgt.setEncounter(Reference30_40.convertReference(src.getContext())); 072 if (src.hasEffective()) 073 tgt.setEffective(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getEffective())); 074 if (src.hasDateElement()) 075 tgt.setDateElement(DateTime30_40.convertDateTime(src.getDateElement())); 076 if (src.hasAssessor()) 077 tgt.setAssessor(Reference30_40.convertReference(src.getAssessor())); 078 if (src.hasPrevious()) 079 tgt.setPrevious(Reference30_40.convertReference(src.getPrevious())); 080 for (org.hl7.fhir.dstu3.model.Reference t : src.getProblem()) tgt.addProblem(Reference30_40.convertReference(t)); 081 for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent t : src.getInvestigation()) 082 tgt.addInvestigation(convertClinicalImpressionInvestigationComponent(t)); 083 for (org.hl7.fhir.dstu3.model.UriType t : src.getProtocol()) tgt.addProtocol(t.getValue()); 084 if (src.hasSummary()) 085 tgt.setSummaryElement(String30_40.convertString(src.getSummaryElement())); 086 for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) 087 tgt.addFinding(convertClinicalImpressionFindingComponent(t)); 088 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPrognosisCodeableConcept()) 089 tgt.addPrognosisCodeableConcept(CodeableConcept30_40.convertCodeableConcept(t)); 090 for (org.hl7.fhir.dstu3.model.Reference t : src.getPrognosisReference()) 091 tgt.addPrognosisReference(Reference30_40.convertReference(t)); 092 for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) tgt.addNote(Annotation30_40.convertAnnotation(t)); 093 return tgt; 094 } 095 096 public static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { 097 if (src == null) 098 return null; 099 org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent(); 100 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 101 if (src.hasItemCodeableConcept()) 102 tgt.setItemCodeableConcept(CodeableConcept30_40.convertCodeableConcept(src.getItemCodeableConcept())); 103 if (src.hasItemReference()) 104 tgt.setItemReference(Reference30_40.convertReference(src.getItemReference())); 105 if (src.hasBasis()) 106 tgt.setBasisElement(String30_40.convertString(src.getBasisElement())); 107 return tgt; 108 } 109 110 public static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { 111 if (src == null) 112 return null; 113 org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent(); 114 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 115 if (src.hasItemCodeableConcept()) 116 tgt.setItem(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getItemCodeableConcept())); 117 else if (src.hasItemReference()) 118 tgt.setItem(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getItemReference())); 119 if (src.hasBasis()) 120 tgt.setBasisElement(String30_40.convertString(src.getBasisElement())); 121 return tgt; 122 } 123 124 public static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent convertClinicalImpressionInvestigationComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent src) throws FHIRException { 125 if (src == null) 126 return null; 127 org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent(); 128 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 129 if (src.hasCode()) 130 tgt.setCode(CodeableConcept30_40.convertCodeableConcept(src.getCode())); 131 for (org.hl7.fhir.dstu3.model.Reference t : src.getItem()) tgt.addItem(Reference30_40.convertReference(t)); 132 return tgt; 133 } 134 135 public static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent convertClinicalImpressionInvestigationComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent src) throws FHIRException { 136 if (src == null) 137 return null; 138 org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent(); 139 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 140 if (src.hasCode()) 141 tgt.setCode(CodeableConcept30_40.convertCodeableConcept(src.getCode())); 142 for (org.hl7.fhir.r4.model.Reference t : src.getItem()) tgt.addItem(Reference30_40.convertReference(t)); 143 return tgt; 144 } 145 146 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus> convertClinicalImpressionStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus> src) throws FHIRException { 147 if (src == null || src.isEmpty()) 148 return null; 149 org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatusEnumFactory()); 150 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 151 switch (src.getValue()) { 152 case DRAFT: 153 tgt.setValue(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.INPROGRESS); 154 break; 155 case COMPLETED: 156 tgt.setValue(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED); 157 break; 158 case ENTEREDINERROR: 159 tgt.setValue(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR); 160 break; 161 default: 162 tgt.setValue(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.NULL); 163 break; 164 } 165 return tgt; 166 } 167 168 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus> convertClinicalImpressionStatus(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus> src) throws FHIRException { 169 if (src == null || src.isEmpty()) 170 return null; 171 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatusEnumFactory()); 172 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 173 switch (src.getValue()) { 174 case INPROGRESS: 175 tgt.setValue(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT); 176 break; 177 case COMPLETED: 178 tgt.setValue(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED); 179 break; 180 case ENTEREDINERROR: 181 tgt.setValue(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR); 182 break; 183 default: 184 tgt.setValue(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.NULL); 185 break; 186 } 187 return tgt; 188 } 189}