001package org.hl7.fhir.convertors.conv40_50.resources40_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext40_50; 004import org.hl7.fhir.convertors.conv40_50.datatypes40_50.BackboneElement40_50; 005import org.hl7.fhir.convertors.conv40_50.datatypes40_50.general40_50.CodeableConcept40_50; 006import org.hl7.fhir.convertors.conv40_50.datatypes40_50.general40_50.Quantity40_50; 007import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.String40_50; 008import org.hl7.fhir.exceptions.FHIRException; 009 010public class SubstanceAmount40_50 { 011 public static org.hl7.fhir.r4.model.SubstanceAmount convertSubstanceAmount(org.hl7.fhir.r5.model.SubstanceAmount src) throws FHIRException { 012 if (src == null) return null; 013 org.hl7.fhir.r4.model.SubstanceAmount tgt = new org.hl7.fhir.r4.model.SubstanceAmount(); 014 BackboneElement40_50.copyBackboneElement(src, tgt); 015 if (src.hasAmount()) 016 tgt.setAmount(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getAmount())); 017 if (src.hasAmountType()) tgt.setAmountType(CodeableConcept40_50.convertCodeableConcept(src.getAmountType())); 018 if (src.hasAmountText()) tgt.setAmountTextElement(String40_50.convertString(src.getAmountTextElement())); 019 if (src.hasReferenceRange()) 020 tgt.setReferenceRange(convertSubstanceAmountReferenceRangeComponent(src.getReferenceRange())); 021 return tgt; 022 } 023 024 public static org.hl7.fhir.r5.model.SubstanceAmount convertSubstanceAmount(org.hl7.fhir.r4.model.SubstanceAmount src) throws FHIRException { 025 if (src == null) return null; 026 org.hl7.fhir.r5.model.SubstanceAmount tgt = new org.hl7.fhir.r5.model.SubstanceAmount(); 027 BackboneElement40_50.copyBackboneElement(src, tgt); 028 if (src.hasAmount()) 029 tgt.setAmount(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getAmount())); 030 if (src.hasAmountType()) tgt.setAmountType(CodeableConcept40_50.convertCodeableConcept(src.getAmountType())); 031 if (src.hasAmountText()) tgt.setAmountTextElement(String40_50.convertString(src.getAmountTextElement())); 032 if (src.hasReferenceRange()) 033 tgt.setReferenceRange(convertSubstanceAmountReferenceRangeComponent(src.getReferenceRange())); 034 return tgt; 035 } 036 037 public static org.hl7.fhir.r5.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent convertSubstanceAmountReferenceRangeComponent(org.hl7.fhir.r4.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent src) throws FHIRException { 038 if (src == null) return null; 039 org.hl7.fhir.r5.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent tgt = new org.hl7.fhir.r5.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent(); 040 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 041 if (src.hasLowLimit()) tgt.setLowLimit(Quantity40_50.convertQuantity(src.getLowLimit())); 042 if (src.hasHighLimit()) tgt.setHighLimit(Quantity40_50.convertQuantity(src.getHighLimit())); 043 return tgt; 044 } 045 046 public static org.hl7.fhir.r4.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent convertSubstanceAmountReferenceRangeComponent(org.hl7.fhir.r5.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent src) throws FHIRException { 047 if (src == null) return null; 048 org.hl7.fhir.r4.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent tgt = new org.hl7.fhir.r4.model.SubstanceAmount.SubstanceAmountReferenceRangeComponent(); 049 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 050 if (src.hasLowLimit()) tgt.setLowLimit(Quantity40_50.convertQuantity(src.getLowLimit())); 051 if (src.hasHighLimit()) tgt.setHighLimit(Quantity40_50.convertQuantity(src.getHighLimit())); 052 return tgt; 053 } 054}