
001package org.hl7.fhir.convertors.conv43_50.datatypes43_50.metadata43_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext43_50; 004import org.hl7.fhir.convertors.conv43_50.Utilities43_50; 005import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Canonical43_50; 006import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Code43_50; 007import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.Integer43_50; 008import org.hl7.fhir.convertors.conv43_50.datatypes43_50.primitive43_50.String43_50; 009import org.hl7.fhir.exceptions.FHIRException; 010import org.hl7.fhir.r5.model.Enumerations; 011 012public class ParameterDefinition43_50 { 013 public static org.hl7.fhir.r5.model.ParameterDefinition convertParameterDefinition(org.hl7.fhir.r4b.model.ParameterDefinition src) throws FHIRException { 014 if (src == null) return null; 015 org.hl7.fhir.r5.model.ParameterDefinition tgt = new org.hl7.fhir.r5.model.ParameterDefinition(); 016 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 017 if (src.hasName()) tgt.setNameElement(Code43_50.convertCode(src.getNameElement())); 018 if (src.hasUse()) tgt.setUseElement(convertParameterUse(src.getUseElement())); 019 if (src.hasMin()) tgt.setMinElement(Integer43_50.convertInteger(src.getMinElement())); 020 if (src.hasMax()) tgt.setMaxElement(String43_50.convertString(src.getMaxElement())); 021 if (src.hasDocumentation()) tgt.setDocumentationElement(String43_50.convertString(src.getDocumentationElement())); 022 if (src.hasType()) { 023 Utilities43_50.convertType(src.getTypeElement(), tgt.getTypeElement()); 024 } 025 if (src.hasProfile()) tgt.setProfileElement(Canonical43_50.convertCanonical(src.getProfileElement())); 026 return tgt; 027 } 028 029 public static org.hl7.fhir.r4b.model.ParameterDefinition convertParameterDefinition(org.hl7.fhir.r5.model.ParameterDefinition src) throws FHIRException { 030 if (src == null) return null; 031 org.hl7.fhir.r4b.model.ParameterDefinition tgt = new org.hl7.fhir.r4b.model.ParameterDefinition(); 032 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 033 if (src.hasName()) tgt.setNameElement(Code43_50.convertCode(src.getNameElement())); 034 if (src.hasUse()) tgt.setUseElement(convertParameterUse(src.getUseElement())); 035 if (src.hasMin()) tgt.setMinElement(Integer43_50.convertInteger(src.getMinElement())); 036 if (src.hasMax()) tgt.setMaxElement(String43_50.convertString(src.getMaxElement())); 037 if (src.hasDocumentation()) tgt.setDocumentationElement(String43_50.convertString(src.getDocumentationElement())); 038 if (src.hasType()) { 039 Utilities43_50.convertType(src.getTypeElement(), tgt.getTypeElement()); 040 } 041 if (src.hasProfile()) tgt.setProfileElement(Canonical43_50.convertCanonical(src.getProfileElement())); 042 return tgt; 043 } 044 045 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.OperationParameterUse> convertParameterUse(org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.Enumerations.OperationParameterUse> src) throws FHIRException { 046 if (src == null || src.isEmpty()) return null; 047 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.OperationParameterUse> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.OperationParameterUseEnumFactory()); 048 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 049 if (src.getValue() == null) { 050 tgt.setValue(null); 051} else { 052 switch(src.getValue()) { 053 case IN: 054 tgt.setValue(Enumerations.OperationParameterUse.IN); 055 break; 056 case OUT: 057 tgt.setValue(Enumerations.OperationParameterUse.OUT); 058 break; 059 default: 060 tgt.setValue(Enumerations.OperationParameterUse.NULL); 061 break; 062 } 063} 064 return tgt; 065 } 066 067 static public org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.Enumerations.OperationParameterUse> convertParameterUse(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.OperationParameterUse> src) throws FHIRException { 068 if (src == null || src.isEmpty()) return null; 069 org.hl7.fhir.r4b.model.Enumeration<org.hl7.fhir.r4b.model.Enumerations.OperationParameterUse> tgt = new org.hl7.fhir.r4b.model.Enumeration<>(new org.hl7.fhir.r4b.model.Enumerations.OperationParameterUseEnumFactory()); 070 ConversionContext43_50.INSTANCE.getVersionConvertor_43_50().copyElement(src, tgt); 071 if (src.getValue() == null) { 072 tgt.setValue(null); 073} else { 074 switch(src.getValue()) { 075 case IN: 076 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.OperationParameterUse.IN); 077 break; 078 case OUT: 079 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.OperationParameterUse.OUT); 080 break; 081 default: 082 tgt.setValue(org.hl7.fhir.r4b.model.Enumerations.OperationParameterUse.NULL); 083 break; 084 } 085} 086 return tgt; 087 } 088}