
001package org.hl7.fhir.convertors.conv10_30.resources10_30; 002 003import org.hl7.fhir.convertors.context.ConversionContext10_30; 004import org.hl7.fhir.convertors.conv10_30.datatypes10_30.Reference10_30; 005import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.CodeableConcept10_30; 006import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Identifier10_30; 007import org.hl7.fhir.exceptions.FHIRException; 008 009public class Condition10_30 { 010 011 public static org.hl7.fhir.dstu3.model.Condition convertCondition(org.hl7.fhir.dstu2.model.Condition src) throws FHIRException { 012 if (src == null || src.isEmpty()) 013 return null; 014 org.hl7.fhir.dstu3.model.Condition tgt = new org.hl7.fhir.dstu3.model.Condition(); 015 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 016 for (org.hl7.fhir.dstu2.model.Identifier t : src.getIdentifier()) 017 tgt.addIdentifier(Identifier10_30.convertIdentifier(t)); 018 if (src.hasPatient()) 019 tgt.setSubject(Reference10_30.convertReference(src.getPatient())); 020 if (src.hasEncounter()) 021 tgt.setContext(Reference10_30.convertReference(src.getEncounter())); 022 if (src.hasAsserter()) 023 tgt.setAsserter(Reference10_30.convertReference(src.getAsserter())); 024 if (src.hasDateRecorded()) 025 tgt.setAssertedDate(src.getDateRecorded()); 026 if (src.hasCode()) 027 tgt.setCode(CodeableConcept10_30.convertCodeableConcept(src.getCode())); 028 if (src.hasCategory()) 029 tgt.addCategory(CodeableConcept10_30.convertCodeableConcept(src.getCategory())); 030 try { 031 if (src.hasClinicalStatus()) 032 tgt.setClinicalStatus(org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.fromCode(src.getClinicalStatus())); 033 } catch (org.hl7.fhir.exceptions.FHIRException e) { 034 throw new FHIRException(e); 035 } 036 if (src.hasVerificationStatus()) 037 tgt.setVerificationStatusElement(convertConditionVerificationStatus(src.getVerificationStatusElement())); 038 if (src.hasSeverity()) 039 tgt.setSeverity(CodeableConcept10_30.convertCodeableConcept(src.getSeverity())); 040 if (src.hasOnset()) 041 tgt.setOnset(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getOnset())); 042 if (src.hasAbatement()) 043 tgt.setAbatement(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getAbatement())); 044 if (src.hasStage()) 045 tgt.setStage(convertConditionStageComponent(src.getStage())); 046 for (org.hl7.fhir.dstu2.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) 047 tgt.addEvidence(convertConditionEvidenceComponent(t)); 048 for (org.hl7.fhir.dstu2.model.CodeableConcept t : src.getBodySite()) 049 tgt.addBodySite(CodeableConcept10_30.convertCodeableConcept(t)); 050 return tgt; 051 } 052 053 public static org.hl7.fhir.dstu2.model.Condition convertCondition(org.hl7.fhir.dstu3.model.Condition src) throws FHIRException { 054 if (src == null || src.isEmpty()) 055 return null; 056 org.hl7.fhir.dstu2.model.Condition tgt = new org.hl7.fhir.dstu2.model.Condition(); 057 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 058 for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) 059 tgt.addIdentifier(Identifier10_30.convertIdentifier(t)); 060 if (src.hasSubject()) 061 tgt.setPatient(Reference10_30.convertReference(src.getSubject())); 062 if (src.hasContext()) 063 tgt.setEncounter(Reference10_30.convertReference(src.getContext())); 064 if (src.hasAsserter()) 065 tgt.setAsserter(Reference10_30.convertReference(src.getAsserter())); 066 if (src.hasAssertedDate()) 067 tgt.setDateRecorded(src.getAssertedDate()); 068 if (src.hasCode()) 069 tgt.setCode(CodeableConcept10_30.convertCodeableConcept(src.getCode())); 070 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) 071 tgt.setCategory(CodeableConcept10_30.convertCodeableConcept(t)); 072 tgt.setClinicalStatus(src.getClinicalStatus().toCode()); 073 if (src.hasVerificationStatus()) 074 tgt.setVerificationStatusElement(convertConditionVerificationStatus(src.getVerificationStatusElement())); 075 if (src.hasSeverity()) 076 tgt.setSeverity(CodeableConcept10_30.convertCodeableConcept(src.getSeverity())); 077 if (src.hasOnset()) 078 tgt.setOnset(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getOnset())); 079 if (src.hasAbatement()) 080 tgt.setAbatement(ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().convertType(src.getAbatement())); 081 if (src.hasStage()) 082 tgt.setStage(convertConditionStageComponent(src.getStage())); 083 for (org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) 084 tgt.addEvidence(convertConditionEvidenceComponent(t)); 085 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) 086 tgt.addBodySite(CodeableConcept10_30.convertCodeableConcept(t)); 087 return tgt; 088 } 089 090 public static org.hl7.fhir.dstu2.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent src) throws FHIRException { 091 if (src == null || src.isEmpty()) 092 return null; 093 org.hl7.fhir.dstu2.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.dstu2.model.Condition.ConditionEvidenceComponent(); 094 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 095 for (org.hl7.fhir.dstu3.model.CodeableConcept cc : src.getCode()) 096 tgt.setCode(CodeableConcept10_30.convertCodeableConcept(cc)); 097 for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) tgt.addDetail(Reference10_30.convertReference(t)); 098 return tgt; 099 } 100 101 public static org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.dstu2.model.Condition.ConditionEvidenceComponent src) throws FHIRException { 102 if (src == null || src.isEmpty()) 103 return null; 104 org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent(); 105 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 106 if (src.hasCode()) 107 tgt.addCode(CodeableConcept10_30.convertCodeableConcept(src.getCode())); 108 for (org.hl7.fhir.dstu2.model.Reference t : src.getDetail()) tgt.addDetail(Reference10_30.convertReference(t)); 109 return tgt; 110 } 111 112 public static org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.dstu2.model.Condition.ConditionStageComponent src) throws FHIRException { 113 if (src == null || src.isEmpty()) 114 return null; 115 org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent(); 116 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 117 if (src.hasSummary()) 118 tgt.setSummary(CodeableConcept10_30.convertCodeableConcept(src.getSummary())); 119 for (org.hl7.fhir.dstu2.model.Reference t : src.getAssessment()) 120 tgt.addAssessment(Reference10_30.convertReference(t)); 121 return tgt; 122 } 123 124 public static org.hl7.fhir.dstu2.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent src) throws FHIRException { 125 if (src == null || src.isEmpty()) 126 return null; 127 org.hl7.fhir.dstu2.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.dstu2.model.Condition.ConditionStageComponent(); 128 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 129 if (src.hasSummary()) 130 tgt.setSummary(CodeableConcept10_30.convertCodeableConcept(src.getSummary())); 131 for (org.hl7.fhir.dstu3.model.Reference t : src.getAssessment()) 132 tgt.addAssessment(Reference10_30.convertReference(t)); 133 return tgt; 134 } 135 136 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus> convertConditionVerificationStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus> src) throws FHIRException { 137 if (src == null || src.isEmpty()) 138 return null; 139 org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus> tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatusEnumFactory()); 140 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 141 switch (src.getValue()) { 142 case PROVISIONAL: 143 tgt.setValue(org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus.PROVISIONAL); 144 break; 145 case DIFFERENTIAL: 146 tgt.setValue(org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus.DIFFERENTIAL); 147 break; 148 case CONFIRMED: 149 tgt.setValue(org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus.CONFIRMED); 150 break; 151 case REFUTED: 152 tgt.setValue(org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus.REFUTED); 153 break; 154 case ENTEREDINERROR: 155 tgt.setValue(org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus.ENTEREDINERROR); 156 break; 157 case UNKNOWN: 158 tgt.setValue(org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus.UNKNOWN); 159 break; 160 default: 161 tgt.setValue(org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus.NULL); 162 break; 163 } 164 return tgt; 165 } 166 167 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus> convertConditionVerificationStatus(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.Condition.ConditionVerificationStatus> src) throws FHIRException { 168 if (src == null || src.isEmpty()) 169 return null; 170 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatusEnumFactory()); 171 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 172 switch (src.getValue()) { 173 case PROVISIONAL: 174 tgt.setValue(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.PROVISIONAL); 175 break; 176 case DIFFERENTIAL: 177 tgt.setValue(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.DIFFERENTIAL); 178 break; 179 case CONFIRMED: 180 tgt.setValue(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.CONFIRMED); 181 break; 182 case REFUTED: 183 tgt.setValue(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.REFUTED); 184 break; 185 case ENTEREDINERROR: 186 tgt.setValue(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.ENTEREDINERROR); 187 break; 188 case UNKNOWN: 189 tgt.setValue(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.UNKNOWN); 190 break; 191 default: 192 tgt.setValue(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.NULL); 193 break; 194 } 195 return tgt; 196 } 197}