001package org.hl7.fhir.convertors.conv14_30.resources14_30;
002
003import org.hl7.fhir.convertors.context.ConversionContext14_30;
004import org.hl7.fhir.convertors.conv14_30.VersionConvertor_14_30;
005import org.hl7.fhir.convertors.conv14_30.datatypes14_30.complextypes14_30.CodeableConcept14_30;
006import org.hl7.fhir.convertors.conv14_30.datatypes14_30.complextypes14_30.ContactPoint14_30;
007import org.hl7.fhir.convertors.conv14_30.datatypes14_30.complextypes14_30.Identifier14_30;
008import org.hl7.fhir.convertors.conv14_30.datatypes14_30.primitivetypes14_30.Boolean14_30;
009import org.hl7.fhir.convertors.conv14_30.datatypes14_30.primitivetypes14_30.Code14_30;
010import org.hl7.fhir.convertors.conv14_30.datatypes14_30.primitivetypes14_30.DateTime14_30;
011import org.hl7.fhir.convertors.conv14_30.datatypes14_30.primitivetypes14_30.String14_30;
012import org.hl7.fhir.convertors.conv14_30.datatypes14_30.primitivetypes14_30.UnsignedInt14_30;
013import org.hl7.fhir.convertors.conv14_30.datatypes14_30.primitivetypes14_30.Uri14_30;
014import org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent;
015import org.hl7.fhir.dstu3.model.CodeSystem;
016import org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator;
017import org.hl7.fhir.dstu3.model.Enumeration;
018import org.hl7.fhir.exceptions.FHIRException;
019
020public class CodeSystem14_30 {
021
022  public static org.hl7.fhir.dstu3.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu2016may.model.CodeSystem src) throws FHIRException {
023    if (src == null || src.isEmpty())
024      return null;
025    org.hl7.fhir.dstu3.model.CodeSystem tgt = new org.hl7.fhir.dstu3.model.CodeSystem();
026    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyDomainResource(src, tgt);
027    if (src.hasUrl())
028      tgt.setUrlElement(Uri14_30.convertUri(src.getUrlElement()));
029    if (src.hasIdentifier())
030      tgt.setIdentifier(Identifier14_30.convertIdentifier(src.getIdentifier()));
031    if (src.hasVersion())
032      tgt.setVersionElement(String14_30.convertString(src.getVersionElement()));
033    if (src.hasName())
034      tgt.setNameElement(String14_30.convertString(src.getNameElement()));
035    if (src.hasStatus())
036      tgt.setStatusElement(Enumerations14_30.convertConformanceResourceStatus(src.getStatusElement()));
037    if (src.hasExperimental())
038      tgt.setExperimentalElement(Boolean14_30.convertBoolean(src.getExperimentalElement()));
039    if (src.hasPublisher())
040      tgt.setPublisherElement(String14_30.convertString(src.getPublisherElement()));
041    for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent t : src.getContact())
042      tgt.addContact(convertCodeSystemContactComponent(t));
043    if (src.hasDate())
044      tgt.setDateElement(DateTime14_30.convertDateTime(src.getDateElement()));
045    if (src.hasDescription())
046      tgt.setDescription(src.getDescription());
047    for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext())
048      if (VersionConvertor_14_30.isJurisdiction(t))
049        tgt.addJurisdiction(CodeableConcept14_30.convertCodeableConcept(t));
050      else
051        tgt.addUseContext(CodeableConcept14_30.convertCodeableConceptToUsageContext(t));
052    if (src.hasRequirements())
053      tgt.setPurpose(src.getRequirements());
054    if (src.hasCopyright())
055      tgt.setCopyright(src.getCopyright());
056    if (src.hasCaseSensitive())
057      tgt.setCaseSensitiveElement(Boolean14_30.convertBoolean(src.getCaseSensitiveElement()));
058    if (src.hasValueSet())
059      tgt.setValueSetElement(Uri14_30.convertUri(src.getValueSetElement()));
060    if (src.hasCompositional())
061      tgt.setCompositionalElement(Boolean14_30.convertBoolean(src.getCompositionalElement()));
062    if (src.hasVersionNeeded())
063      tgt.setVersionNeededElement(Boolean14_30.convertBoolean(src.getVersionNeededElement()));
064    if (src.hasContent())
065      tgt.setContentElement(convertCodeSystemContentMode(src.getContentElement()));
066    if (src.hasCount())
067      tgt.setCountElement(UnsignedInt14_30.convertUnsignedInt(src.getCountElement()));
068    for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter())
069      tgt.addFilter(convertCodeSystemFilterComponent(t));
070    for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent t : src.getProperty())
071      tgt.addProperty(convertPropertyComponent(t));
072    for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept())
073      tgt.addConcept(convertConceptDefinitionComponent(t));
074    return tgt;
075  }
076
077  public static org.hl7.fhir.dstu2016may.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem src) throws FHIRException {
078    if (src == null || src.isEmpty())
079      return null;
080    org.hl7.fhir.dstu2016may.model.CodeSystem tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem();
081    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyDomainResource(src, tgt);
082    if (src.hasUrl())
083      tgt.setUrlElement(Uri14_30.convertUri(src.getUrlElement()));
084    if (src.hasIdentifier())
085      tgt.setIdentifier(Identifier14_30.convertIdentifier(src.getIdentifier()));
086    if (src.hasVersion())
087      tgt.setVersionElement(String14_30.convertString(src.getVersionElement()));
088    if (src.hasName())
089      tgt.setNameElement(String14_30.convertString(src.getNameElement()));
090    if (src.hasStatus())
091      tgt.setStatusElement(Enumerations14_30.convertConformanceResourceStatus(src.getStatusElement()));
092    if (src.hasExperimental())
093      tgt.setExperimentalElement(Boolean14_30.convertBoolean(src.getExperimentalElement()));
094    if (src.hasPublisher())
095      tgt.setPublisherElement(String14_30.convertString(src.getPublisherElement()));
096    for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact())
097      tgt.addContact(convertCodeSystemContactComponent(t));
098    if (src.hasDate())
099      tgt.setDateElement(DateTime14_30.convertDateTime(src.getDateElement()));
100    if (src.hasDescription())
101      tgt.setDescription(src.getDescription());
102    for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext())
103      if (t.hasValueCodeableConcept())
104        tgt.addUseContext(CodeableConcept14_30.convertCodeableConcept(t.getValueCodeableConcept()));
105    for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction())
106      tgt.addUseContext(CodeableConcept14_30.convertCodeableConcept(t));
107    if (src.hasPurpose())
108      tgt.setRequirements(src.getPurpose());
109    if (src.hasCopyright())
110      tgt.setCopyright(src.getCopyright());
111    if (src.hasCaseSensitive())
112      tgt.setCaseSensitiveElement(Boolean14_30.convertBoolean(src.getCaseSensitiveElement()));
113    if (src.hasValueSet())
114      tgt.setValueSetElement(Uri14_30.convertUri(src.getValueSetElement()));
115    if (src.hasCompositional())
116      tgt.setCompositionalElement(Boolean14_30.convertBoolean(src.getCompositionalElement()));
117    if (src.hasVersionNeeded())
118      tgt.setVersionNeededElement(Boolean14_30.convertBoolean(src.getVersionNeededElement()));
119    if (src.hasContent())
120      tgt.setContentElement(convertCodeSystemContentMode(src.getContentElement()));
121    if (src.hasCount())
122      tgt.setCountElement(UnsignedInt14_30.convertUnsignedInt(src.getCountElement()));
123    for (org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter())
124      tgt.addFilter(convertCodeSystemFilterComponent(t));
125    for (org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent t : src.getProperty())
126      tgt.addProperty(convertPropertyComponent(t));
127    for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept())
128      tgt.addConcept(convertConceptDefinitionComponent(t));
129    return tgt;
130  }
131
132  public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent convertCodeSystemContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException {
133    if (src == null || src.isEmpty())
134      return null;
135    org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent();
136    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyElement(src, tgt);
137    if (src.hasName())
138      tgt.setNameElement(String14_30.convertString(src.getNameElement()));
139    for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom())
140      tgt.addTelecom(ContactPoint14_30.convertContactPoint(t));
141    return tgt;
142  }
143
144  public static org.hl7.fhir.dstu3.model.ContactDetail convertCodeSystemContactComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent src) throws FHIRException {
145    if (src == null || src.isEmpty())
146      return null;
147    org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail();
148    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyElement(src, tgt);
149    if (src.hasName())
150      tgt.setNameElement(String14_30.convertString(src.getNameElement()));
151    for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom())
152      tgt.addTelecom(ContactPoint14_30.convertContactPoint(t));
153    return tgt;
154  }
155
156  static public org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode> convertCodeSystemContentMode(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode> src) throws FHIRException {
157    if (src == null || src.isEmpty())
158      return null;
159    org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode> tgt = new org.hl7.fhir.dstu2016may.model.Enumeration<>(new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentModeEnumFactory());
160    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyElement(src, tgt);
161    switch (src.getValue()) {
162      case NOTPRESENT:
163        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NOTPRESENT);
164        break;
165      case EXAMPLE:
166        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.EXAMPLAR);
167        break;
168      case FRAGMENT:
169        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.FRAGMENT);
170        break;
171      case COMPLETE:
172        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.COMPLETE);
173        break;
174      default:
175        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NULL);
176        break;
177    }
178    return tgt;
179  }
180
181  static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode> convertCodeSystemContentMode(org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode> src) throws FHIRException {
182    if (src == null || src.isEmpty())
183      return null;
184    org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentModeEnumFactory());
185    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyElement(src, tgt);
186    switch (src.getValue()) {
187      case NOTPRESENT:
188        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NOTPRESENT);
189        break;
190      case EXAMPLAR:
191        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.EXAMPLE);
192        break;
193      case FRAGMENT:
194        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.FRAGMENT);
195        break;
196      case COMPLETE:
197        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.COMPLETE);
198        break;
199      default:
200        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NULL);
201        break;
202    }
203    return tgt;
204  }
205
206  public static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException {
207    if (src == null || src.isEmpty())
208      return null;
209    org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent();
210    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
211    if (src.hasCodeElement())
212      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
213    if (src.hasDescription())
214      tgt.setDescriptionElement(String14_30.convertString(src.getDescriptionElement()));
215    for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getOperator())
216      try {
217        tgt.addOperator(CodeSystem.FilterOperator.fromCode(t.getValue()));
218      } catch (org.hl7.fhir.exceptions.FHIRException e) {
219        throw new FHIRException(e);
220      }
221    if (src.hasValueElement())
222      tgt.setValueElement(String14_30.convertString(src.getValueElement()));
223    return tgt;
224  }
225
226  public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException {
227    if (src == null || src.isEmpty())
228      return null;
229    org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent();
230    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
231    if (src.hasCodeElement())
232      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
233    if (src.hasDescription())
234      tgt.setDescriptionElement(String14_30.convertString(src.getDescriptionElement()));
235    for (Enumeration<FilterOperator> t : src.getOperator()) tgt.addOperator(t.getValue().toCode());
236    if (src.hasValueElement())
237      tgt.setValueElement(String14_30.convertString(src.getValueElement()));
238    return tgt;
239  }
240
241  public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException {
242    if (src == null || src.isEmpty())
243      return null;
244    org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent();
245    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
246    if (src.hasCodeElement())
247      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
248    if (src.hasDisplay())
249      tgt.setDisplayElement(String14_30.convertString(src.getDisplayElement()));
250    if (src.hasDefinition())
251      tgt.setDefinitionElement(String14_30.convertString(src.getDefinitionElement()));
252    for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation())
253      tgt.addDesignation(convertConceptDefinitionDesignationComponent(t));
254    for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent t : src.getProperty())
255      tgt.addProperty(convertConceptPropertyComponent(t));
256    for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept())
257      tgt.addConcept(convertConceptDefinitionComponent(t));
258    return tgt;
259  }
260
261  public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException {
262    if (src == null || src.isEmpty())
263      return null;
264    org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent();
265    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
266    if (src.hasCodeElement())
267      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
268    if (src.hasDisplay())
269      tgt.setDisplayElement(String14_30.convertString(src.getDisplayElement()));
270    if (src.hasDefinition())
271      tgt.setDefinitionElement(String14_30.convertString(src.getDefinitionElement()));
272    for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation())
273      tgt.addDesignation(convertConceptDefinitionDesignationComponent(t));
274    for (ConceptDefinitionPropertyComponent t : src.getProperty()) tgt.addProperty(convertConceptPropertyComponent(t));
275    for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept())
276      tgt.addConcept(convertConceptDefinitionComponent(t));
277    return tgt;
278  }
279
280  public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException {
281    if (src == null || src.isEmpty())
282      return null;
283    org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent();
284    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
285    if (src.hasLanguage())
286      tgt.setLanguageElement(Code14_30.convertCode(src.getLanguageElement()));
287    if (src.hasUse())
288      tgt.setUse(Code14_30.convertCoding(src.getUse()));
289    if (src.hasValueElement())
290      tgt.setValueElement(String14_30.convertString(src.getValueElement()));
291    return tgt;
292  }
293
294  public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException {
295    if (src == null || src.isEmpty())
296      return null;
297    org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent();
298    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
299    if (src.hasLanguage())
300      tgt.setLanguageElement(Code14_30.convertCode(src.getLanguageElement()));
301    if (src.hasUse())
302      tgt.setUse(Code14_30.convertCoding(src.getUse()));
303    if (src.hasValueElement())
304      tgt.setValueElement(String14_30.convertString(src.getValueElement()));
305    return tgt;
306  }
307
308  public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException {
309    if (src == null || src.isEmpty())
310      return null;
311    org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent();
312    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
313    if (src.hasCodeElement())
314      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
315    if (src.hasValue())
316      tgt.setValue(ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().convertType(src.getValue()));
317    return tgt;
318  }
319
320  public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent src) throws FHIRException {
321    if (src == null || src.isEmpty())
322      return null;
323    org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent();
324    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
325    if (src.hasCodeElement())
326      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
327    if (src.hasValue())
328      tgt.setValue(ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().convertType(src.getValue()));
329    return tgt;
330  }
331
332  public static org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent src) throws FHIRException {
333    if (src == null || src.isEmpty())
334      return null;
335    org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent();
336    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
337    if (src.hasCodeElement())
338      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
339    if (src.hasDescription())
340      tgt.setDescriptionElement(String14_30.convertString(src.getDescriptionElement()));
341    if (src.hasType())
342      tgt.setTypeElement(convertPropertyType(src.getTypeElement()));
343    return tgt;
344  }
345
346  public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent convertPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent src) throws FHIRException {
347    if (src == null || src.isEmpty())
348      return null;
349    org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent();
350    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyBackboneElement(src,tgt);
351    if (src.hasCodeElement())
352      tgt.setCodeElement(Code14_30.convertCode(src.getCodeElement()));
353    if (src.hasDescription())
354      tgt.setDescriptionElement(String14_30.convertString(src.getDescriptionElement()));
355    if (src.hasType())
356      tgt.setTypeElement(convertPropertyType(src.getTypeElement()));
357    return tgt;
358  }
359
360  static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CodeSystem.PropertyType> convertPropertyType(org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType> src) throws FHIRException {
361    if (src == null || src.isEmpty())
362      return null;
363    org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CodeSystem.PropertyType> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.CodeSystem.PropertyTypeEnumFactory());
364    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyElement(src, tgt);
365    switch (src.getValue()) {
366      case CODE:
367        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODE);
368        break;
369      case CODING:
370        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODING);
371        break;
372      case STRING:
373        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.STRING);
374        break;
375      case INTEGER:
376        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.INTEGER);
377        break;
378      case BOOLEAN:
379        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.BOOLEAN);
380        break;
381      case DATETIME:
382        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.DATETIME);
383        break;
384      default:
385        tgt.setValue(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.NULL);
386        break;
387    }
388    return tgt;
389  }
390
391  static public org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType> convertPropertyType(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CodeSystem.PropertyType> src) throws FHIRException {
392    if (src == null || src.isEmpty())
393      return null;
394    org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType> tgt = new org.hl7.fhir.dstu2016may.model.Enumeration<>(new org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyTypeEnumFactory());
395    ConversionContext14_30.INSTANCE.getVersionConvertor_14_30().copyElement(src, tgt);
396    switch (src.getValue()) {
397      case CODE:
398        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODE);
399        break;
400      case CODING:
401        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODING);
402        break;
403      case STRING:
404        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.STRING);
405        break;
406      case INTEGER:
407        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.INTEGER);
408        break;
409      case BOOLEAN:
410        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.BOOLEAN);
411        break;
412      case DATETIME:
413        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.DATETIME);
414        break;
415      default:
416        tgt.setValue(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.NULL);
417        break;
418    }
419    return tgt;
420  }
421}