
001package org.hl7.fhir.convertors.conv30_40.datatypes30_40; 002 003import org.hl7.fhir.convertors.VersionConvertorConstants; 004import org.hl7.fhir.convertors.context.ConversionContext30_40; 005import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Coding30_40; 006import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.Code30_40; 007import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.String30_40; 008import org.hl7.fhir.exceptions.FHIRException; 009import org.hl7.fhir.r4.model.TriggerDefinition; 010import org.hl7.fhir.r4.model.Type; 011 012public class TriggerDefinition30_40 { 013 public static org.hl7.fhir.r4.model.TriggerDefinition convertTriggerDefinition(org.hl7.fhir.dstu3.model.TriggerDefinition src) throws FHIRException { 014 if (src == null) return null; 015 org.hl7.fhir.r4.model.TriggerDefinition tgt = new org.hl7.fhir.r4.model.TriggerDefinition(); 016 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 017 if (src.hasType()) tgt.setTypeElement(convertTriggerType(src.getTypeElement())); 018 if (src.hasEventName()) tgt.setNameElement(String30_40.convertString(src.getEventNameElement())); 019 if (src.hasEventTiming()) 020 tgt.setTiming(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getEventTiming())); 021 if (src.hasEventData()) tgt.addData(convertDataRequirement(src.getEventData())); 022 return tgt; 023 } 024 025 public static org.hl7.fhir.dstu3.model.TriggerDefinition convertTriggerDefinition(org.hl7.fhir.r4.model.TriggerDefinition src) throws FHIRException { 026 if (src == null) return null; 027 org.hl7.fhir.dstu3.model.TriggerDefinition tgt = new org.hl7.fhir.dstu3.model.TriggerDefinition(); 028 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 029 if (src.hasType()) tgt.setTypeElement(convertTriggerType(src.getTypeElement())); 030 if (src.hasName()) tgt.setEventNameElement(String30_40.convertString(src.getNameElement())); 031 if (src.hasTiming()) 032 tgt.setEventTiming(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getTiming())); 033 if (src.hasData()) tgt.setEventData(convertDataRequirement(src.getDataFirstRep())); 034 return tgt; 035 } 036 037 public static org.hl7.fhir.r4.model.DataRequirement convertDataRequirement(org.hl7.fhir.dstu3.model.DataRequirement src) throws FHIRException { 038 if (src == null) return null; 039 org.hl7.fhir.r4.model.DataRequirement tgt = new org.hl7.fhir.r4.model.DataRequirement(); 040 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 041 if (src.hasType()) tgt.setTypeElement(Code30_40.convertCode(src.getTypeElement())); 042 for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) tgt.addProfile(t.getValue()); 043 for (org.hl7.fhir.dstu3.model.StringType t : src.getMustSupport()) tgt.addMustSupport(t.getValue()); 044 for (org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent t : src.getCodeFilter()) 045 tgt.addCodeFilter(convertDataRequirementCodeFilterComponent(t)); 046 for (org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent t : src.getDateFilter()) 047 tgt.addDateFilter(convertDataRequirementDateFilterComponent(t)); 048 return tgt; 049 } 050 051 public static org.hl7.fhir.dstu3.model.DataRequirement convertDataRequirement(org.hl7.fhir.r4.model.DataRequirement src) throws FHIRException { 052 if (src == null) return null; 053 org.hl7.fhir.dstu3.model.DataRequirement tgt = new org.hl7.fhir.dstu3.model.DataRequirement(); 054 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 055 if (src.hasType()) tgt.setTypeElement(Code30_40.convertCode(src.getTypeElement())); 056 for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) tgt.addProfile(t.getValue()); 057 for (org.hl7.fhir.r4.model.StringType t : src.getMustSupport()) tgt.addMustSupport(t.getValue()); 058 for (org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent t : src.getCodeFilter()) 059 tgt.addCodeFilter(convertDataRequirementCodeFilterComponent(t)); 060 for (org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent t : src.getDateFilter()) 061 tgt.addDateFilter(convertDataRequirementDateFilterComponent(t)); 062 return tgt; 063 } 064 065 public static org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent convertDataRequirementCodeFilterComponent(org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent src) throws FHIRException { 066 if (src == null) return null; 067 org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent tgt = new org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent(); 068 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 069 if (src.hasPath()) tgt.setPathElement(String30_40.convertString(src.getPathElement())); 070 if (src.hasValueSet()) { 071 Type t = ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getValueSet()); 072 if (t instanceof org.hl7.fhir.r4.model.Reference) 073 tgt.setValueSet(((org.hl7.fhir.r4.model.Reference) t).getReference()); 074 else tgt.setValueSet(t.primitiveValue()); 075 tgt.setValueSet(VersionConvertorConstants.refToVS(tgt.getValueSet())); 076 } 077 for (org.hl7.fhir.dstu3.model.CodeType t : src.getValueCode()) tgt.addCode(Coding30_40.convertCoding(t)); 078 for (org.hl7.fhir.dstu3.model.Coding t : src.getValueCoding()) tgt.addCode(Coding30_40.convertCoding(t)); 079 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getValueCodeableConcept()) 080 tgt.addCode(Coding30_40.convertCoding(t)); 081 return tgt; 082 } 083 084 public static org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent convertDataRequirementCodeFilterComponent(org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent src) throws FHIRException { 085 if (src == null) return null; 086 org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent tgt = new org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent(); 087 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 088 if (src.hasPath()) tgt.setPathElement(String30_40.convertString(src.getPathElement())); 089 if (src.hasValueSet()) { 090 String vsr = VersionConvertorConstants.vsToRef(src.getValueSet()); 091 if (vsr != null) tgt.setValueSet(new org.hl7.fhir.dstu3.model.UriType(vsr)); 092 else tgt.setValueSet(new org.hl7.fhir.dstu3.model.Reference(src.getValueSet())); 093 } 094 for (org.hl7.fhir.r4.model.Coding t : src.getCode()) { 095 tgt.addValueCoding(Coding30_40.convertCoding(t)); 096 } 097 return tgt; 098 } 099 100 public static org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent convertDataRequirementDateFilterComponent(org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent src) throws FHIRException { 101 if (src == null) return null; 102 org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent tgt = new org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent(); 103 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 104 if (src.hasPath()) tgt.setPathElement(String30_40.convertString(src.getPathElement())); 105 if (src.hasValue()) 106 tgt.setValue(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getValue())); 107 return tgt; 108 } 109 110 public static org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent convertDataRequirementDateFilterComponent(org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent src) throws FHIRException { 111 if (src == null) return null; 112 org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent tgt = new org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent(); 113 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 114 if (src.hasPath()) tgt.setPathElement(String30_40.convertString(src.getPathElement())); 115 if (src.hasValue()) 116 tgt.setValue(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getValue())); 117 return tgt; 118 } 119 120 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.TriggerDefinition.TriggerType> convertTriggerType(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType> src) throws FHIRException { 121 if (src == null || src.isEmpty()) return null; 122 org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.TriggerDefinition.TriggerType> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.TriggerDefinition.TriggerTypeEnumFactory()); 123 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 124 if (src.getValue() == null) { 125 tgt.setValue(null); 126} else { 127 switch(src.getValue()) { 128 case NAMEDEVENT: 129 tgt.setValue(TriggerDefinition.TriggerType.NAMEDEVENT); 130 break; 131 case PERIODIC: 132 tgt.setValue(TriggerDefinition.TriggerType.PERIODIC); 133 break; 134 case DATAADDED: 135 tgt.setValue(TriggerDefinition.TriggerType.DATAADDED); 136 break; 137 case DATAMODIFIED: 138 tgt.setValue(TriggerDefinition.TriggerType.DATAMODIFIED); 139 break; 140 case DATAREMOVED: 141 tgt.setValue(TriggerDefinition.TriggerType.DATAREMOVED); 142 break; 143 case DATAACCESSED: 144 tgt.setValue(TriggerDefinition.TriggerType.DATAACCESSED); 145 break; 146 case DATAACCESSENDED: 147 tgt.setValue(TriggerDefinition.TriggerType.DATAACCESSENDED); 148 break; 149 default: 150 tgt.setValue(TriggerDefinition.TriggerType.NULL); 151 break; 152 } 153} 154 return tgt; 155 } 156 157 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType> convertTriggerType(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.TriggerDefinition.TriggerType> src) throws FHIRException { 158 if (src == null || src.isEmpty()) return null; 159 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerTypeEnumFactory()); 160 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 161 if (src.getValue() == null) { 162 tgt.setValue(null); 163} else { 164 switch(src.getValue()) { 165 case NAMEDEVENT: 166 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.NAMEDEVENT); 167 break; 168 case PERIODIC: 169 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.PERIODIC); 170 break; 171 case DATAADDED: 172 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAADDED); 173 break; 174 case DATAMODIFIED: 175 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAMODIFIED); 176 break; 177 case DATAREMOVED: 178 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAREMOVED); 179 break; 180 case DATAACCESSED: 181 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAACCESSED); 182 break; 183 case DATAACCESSENDED: 184 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAACCESSENDED); 185 break; 186 default: 187 tgt.setValue(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.NULL); 188 break; 189 } 190} 191 return tgt; 192 } 193}