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.Annotation43_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.Decimal43_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; 011import org.hl7.fhir.r5.model.CodeableReference; 012 013/* 014 Copyright (c) 2011+, HL7, Inc. 015 All rights reserved. 016 017 Redistribution and use in source and binary forms, with or without modification, 018 are permitted provided that the following conditions are met: 019 020 * Redistributions of source code must retain the above copyright notice, this 021 list of conditions and the following disclaimer. 022 * Redistributions in binary form must reproduce the above copyright notice, 023 this list of conditions and the following disclaimer in the documentation 024 and/or other materials provided with the distribution. 025 * Neither the name of HL7 nor the names of its contributors may be used to 026 endorse or promote products derived from this software without specific 027 prior written permission. 028 029 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 030 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 031 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 032 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 033 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 034 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 035 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 036 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 037 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 038 POSSIBILITY OF SUCH DAMAGE. 039 040*/ 041// Generated on Sun, Feb 24, 2019 11:37+1100 for FHIR v4.0.0 042public class RiskAssessment43_50 { 043 044 public static org.hl7.fhir.r5.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.r4b.model.RiskAssessment src) throws FHIRException { 045 if (src == null) 046 return null; 047 org.hl7.fhir.r5.model.RiskAssessment tgt = new org.hl7.fhir.r5.model.RiskAssessment(); 048 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyDomainResource(src, tgt); 049 for (org.hl7.fhir.r4b.model.Identifier t : src.getIdentifier()) 050 tgt.addIdentifier(Identifier43_50.convertIdentifier(t)); 051 if (src.hasBasedOn()) 052 tgt.setBasedOn(Reference43_50.convertReference(src.getBasedOn())); 053 if (src.hasParent()) 054 tgt.setParent(Reference43_50.convertReference(src.getParent())); 055 if (src.hasStatus()) 056 tgt.setStatusElement(convertRiskAssessmentStatus(src.getStatusElement())); 057 if (src.hasMethod()) 058 tgt.setMethod(CodeableConcept43_50.convertCodeableConcept(src.getMethod())); 059 if (src.hasCode()) 060 tgt.setCode(CodeableConcept43_50.convertCodeableConcept(src.getCode())); 061 if (src.hasSubject()) 062 tgt.setSubject(Reference43_50.convertReference(src.getSubject())); 063 if (src.hasEncounter()) 064 tgt.setEncounter(Reference43_50.convertReference(src.getEncounter())); 065 if (src.hasOccurrence()) 066 tgt.setOccurrence(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getOccurrence())); 067 if (src.hasCondition()) 068 tgt.setCondition(Reference43_50.convertReference(src.getCondition())); 069 if (src.hasPerformer()) 070 tgt.setPerformer(Reference43_50.convertReference(src.getPerformer())); 071 for (org.hl7.fhir.r4b.model.CodeableConcept t : src.getReasonCode()) 072 tgt.addReason(CodeableConcept43_50.convertCodeableConceptToCodeableReference(t)); 073 for (org.hl7.fhir.r4b.model.Reference t : src.getReasonReference()) 074 tgt.addReason(Reference43_50.convertReferenceToCodeableReference(t)); 075 for (org.hl7.fhir.r4b.model.Reference t : src.getBasis()) tgt.addBasis(Reference43_50.convertReference(t)); 076 for (org.hl7.fhir.r4b.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) 077 tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); 078 if (src.hasMitigation()) 079 tgt.setMitigationElement(String43_50.convertString(src.getMitigationElement())); 080 for (org.hl7.fhir.r4b.model.Annotation t : src.getNote()) tgt.addNote(Annotation43_50.convertAnnotation(t)); 081 return tgt; 082 } 083 084 public static org.hl7.fhir.r4b.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.r5.model.RiskAssessment src) throws FHIRException { 085 if (src == null) 086 return null; 087 org.hl7.fhir.r4b.model.RiskAssessment tgt = new org.hl7.fhir.r4b.model.RiskAssessment(); 088 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyDomainResource(src, tgt); 089 for (org.hl7.fhir.r5.model.Identifier t : src.getIdentifier()) 090 tgt.addIdentifier(Identifier43_50.convertIdentifier(t)); 091 if (src.hasBasedOn()) 092 tgt.setBasedOn(Reference43_50.convertReference(src.getBasedOn())); 093 if (src.hasParent()) 094 tgt.setParent(Reference43_50.convertReference(src.getParent())); 095 if (src.hasStatus()) 096 tgt.setStatusElement(convertRiskAssessmentStatus(src.getStatusElement())); 097 if (src.hasMethod()) 098 tgt.setMethod(CodeableConcept43_50.convertCodeableConcept(src.getMethod())); 099 if (src.hasCode()) 100 tgt.setCode(CodeableConcept43_50.convertCodeableConcept(src.getCode())); 101 if (src.hasSubject()) 102 tgt.setSubject(Reference43_50.convertReference(src.getSubject())); 103 if (src.hasEncounter()) 104 tgt.setEncounter(Reference43_50.convertReference(src.getEncounter())); 105 if (src.hasOccurrence()) 106 tgt.setOccurrence(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getOccurrence())); 107 if (src.hasCondition()) 108 tgt.setCondition(Reference43_50.convertReference(src.getCondition())); 109 if (src.hasPerformer()) 110 tgt.setPerformer(Reference43_50.convertReference(src.getPerformer())); 111 for (CodeableReference t : src.getReason()) 112 if (t.hasConcept()) 113 tgt.addReasonCode(CodeableConcept43_50.convertCodeableConcept(t.getConcept())); 114 for (CodeableReference t : src.getReason()) 115 if (t.hasReference()) 116 tgt.addReasonReference(Reference43_50.convertReference(t.getReference())); 117 for (org.hl7.fhir.r5.model.Reference t : src.getBasis()) tgt.addBasis(Reference43_50.convertReference(t)); 118 for (org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) 119 tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); 120 if (src.hasMitigation()) 121 tgt.setMitigationElement(String43_50.convertString(src.getMitigationElement())); 122 for (org.hl7.fhir.r5.model.Annotation t : src.getNote()) tgt.addNote(Annotation43_50.convertAnnotation(t)); 123 return tgt; 124 } 125 126 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ObservationStatus> convertRiskAssessmentStatus(org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.Enumerations.ObservationStatus> src) throws FHIRException { 127 if (src == null || src.isEmpty()) 128 return null; 129 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ObservationStatus> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.ObservationStatusEnumFactory()); 130 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 131 switch (src.getValue()) { 132 case REGISTERED: 133 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.REGISTERED); 134 break; 135 case PRELIMINARY: 136 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.PRELIMINARY); 137 break; 138 case FINAL: 139 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.FINAL); 140 break; 141 case AMENDED: 142 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.AMENDED); 143 break; 144 case CORRECTED: 145 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.CORRECTED); 146 break; 147 case CANCELLED: 148 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.CANCELLED); 149 break; 150 case ENTEREDINERROR: 151 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.ENTEREDINERROR); 152 break; 153 case UNKNOWN: 154 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.UNKNOWN); 155 break; 156 default: 157 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ObservationStatus.NULL); 158 break; 159 } 160 return tgt; 161 } 162 163 static public org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.Enumerations.ObservationStatus> convertRiskAssessmentStatus(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.ObservationStatus> src) throws FHIRException { 164 if (src == null || src.isEmpty()) 165 return null; 166 org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.Enumerations.ObservationStatus> tgt = new org.hl7.fhir.r4b.model.Enumeration<>(new org.hl7.fhir.r4b.model.Enumerations.ObservationStatusEnumFactory()); 167 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 168 switch (src.getValue()) { 169 case REGISTERED: 170 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.REGISTERED); 171 break; 172 case PRELIMINARY: 173 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.PRELIMINARY); 174 break; 175 case FINAL: 176 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.FINAL); 177 break; 178 case AMENDED: 179 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.AMENDED); 180 break; 181 case CORRECTED: 182 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.CORRECTED); 183 break; 184 case CANCELLED: 185 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.CANCELLED); 186 break; 187 case ENTEREDINERROR: 188 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.ENTEREDINERROR); 189 break; 190 case UNKNOWN: 191 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.UNKNOWN); 192 break; 193 default: 194 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.ObservationStatus.NULL); 195 break; 196 } 197 return tgt; 198 } 199 200 public static org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.r4b.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { 201 if (src == null) 202 return null; 203 org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent(); 204 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 205 if (src.hasOutcome()) 206 tgt.setOutcome(CodeableConcept43_50.convertCodeableConcept(src.getOutcome())); 207 if (src.hasProbability()) 208 tgt.setProbability(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getProbability())); 209 if (src.hasQualitativeRisk()) 210 tgt.setQualitativeRisk(CodeableConcept43_50.convertCodeableConcept(src.getQualitativeRisk())); 211 if (src.hasRelativeRisk()) 212 tgt.setRelativeRiskElement(Decimal43_50.convertDecimal(src.getRelativeRiskElement())); 213 if (src.hasWhen()) 214 tgt.setWhen(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getWhen())); 215 if (src.hasRationale()) 216 tgt.setRationaleElement(String43_50.convertString(src.getRationaleElement())); 217 return tgt; 218 } 219 220 public static org.hl7.fhir.r4b.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.r5.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { 221 if (src == null) 222 return null; 223 org.hl7.fhir.r4b.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.r4b.model.RiskAssessment.RiskAssessmentPredictionComponent(); 224 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyBackboneElement(src, tgt); 225 if (src.hasOutcome()) 226 tgt.setOutcome(CodeableConcept43_50.convertCodeableConcept(src.getOutcome())); 227 if (src.hasProbability()) 228 tgt.setProbability(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getProbability())); 229 if (src.hasQualitativeRisk()) 230 tgt.setQualitativeRisk(CodeableConcept43_50.convertCodeableConcept(src.getQualitativeRisk())); 231 if (src.hasRelativeRisk()) 232 tgt.setRelativeRiskElement(Decimal43_50.convertDecimal(src.getRelativeRiskElement())); 233 if (src.hasWhen()) 234 tgt.setWhen(ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().convertType(src.getWhen())); 235 if (src.hasRationale()) 236 tgt.setRationaleElement(String43_50.convertString(src.getRationaleElement())); 237 return tgt; 238 } 239}