001package org.hl7.fhir.convertors.conv14_50.resources14_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext14_50; 004import org.hl7.fhir.convertors.conv14_50.datatypes14_50.ElementDefinition14_50; 005import org.hl7.fhir.convertors.conv14_50.datatypes14_50.complextypes14_50.CodeableConcept14_50; 006import org.hl7.fhir.convertors.conv14_50.datatypes14_50.complextypes14_50.ContactPoint14_50; 007import org.hl7.fhir.convertors.conv14_50.datatypes14_50.complextypes14_50.Identifier14_50; 008import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.Boolean14_50; 009import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.DateTime14_50; 010import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.Id14_50; 011import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.String14_50; 012import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.Uri14_50; 013import org.hl7.fhir.exceptions.FHIRException; 014import org.hl7.fhir.r5.model.StructureDefinition.StructureDefinitionKind; 015 016public class DataElement14_50 { 017 018 public static org.hl7.fhir.r5.model.StructureDefinition convertDataElement(org.hl7.fhir.dstu2016may.model.DataElement src) throws FHIRException { 019 if (src == null || src.isEmpty()) 020 return null; 021 org.hl7.fhir.r5.model.StructureDefinition tgt = new org.hl7.fhir.r5.model.StructureDefinition(); 022 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyDomainResource(src, tgt); 023 if (src.hasUrl()) 024 tgt.setUrlElement(Uri14_50.convertUri(src.getUrlElement())); 025 for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) 026 tgt.addIdentifier(Identifier14_50.convertIdentifier(t)); 027 if (src.hasVersion()) 028 tgt.setVersionElement(String14_50.convertString(src.getVersionElement())); 029 if (src.hasStatus()) 030 tgt.setStatusElement(Enumerations14_50.convertConformanceResourceStatus(src.getStatusElement())); 031 if (src.hasExperimental()) 032 tgt.setExperimentalElement(Boolean14_50.convertBoolean(src.getExperimentalElement())); 033 if (src.hasPublisher()) 034 tgt.setPublisherElement(String14_50.convertString(src.getPublisherElement())); 035 if (src.hasDate()) 036 tgt.setDateElement(DateTime14_50.convertDateTime(src.getDateElement())); 037 if (src.hasName()) 038 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 039 for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent t : src.getContact()) 040 tgt.addContact(convertDataElementContactComponent(t)); 041 for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) 042 if (CodeableConcept14_50.isJurisdiction(t)) 043 tgt.addJurisdiction(CodeableConcept14_50.convertCodeableConcept(t)); 044 else 045 tgt.addUseContext(CodeableConcept14_50.convertCodeableConceptToUsageContext(t)); 046 if (src.hasCopyright()) 047 tgt.setCopyright(src.getCopyright()); 048 for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent t : src.getMapping()) 049 tgt.addMapping(convertDataElementMappingComponent(t)); 050 for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) 051 tgt.getSnapshot().addElement(ElementDefinition14_50.convertElementDefinition(t, src.getElement(), src.getElement().indexOf(t))); 052 tgt.setKind(StructureDefinitionKind.COMPLEXTYPE); 053 tgt.setAbstract(false); 054 tgt.setType(tgt.getName()); 055 tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/Element"); 056 tgt.setDerivation(org.hl7.fhir.r5.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION); 057 return tgt; 058 } 059 060 public static org.hl7.fhir.r5.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent src) throws FHIRException { 061 if (src == null || src.isEmpty()) 062 return null; 063 org.hl7.fhir.r5.model.ContactDetail tgt = new org.hl7.fhir.r5.model.ContactDetail(); 064 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 065 if (src.hasName()) 066 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 067 for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) 068 tgt.addTelecom(ContactPoint14_50.convertContactPoint(t)); 069 return tgt; 070 } 071 072 public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.r5.model.ContactDetail src) throws FHIRException { 073 if (src == null || src.isEmpty()) 074 return null; 075 org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent(); 076 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 077 if (src.hasName()) 078 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 079 for (org.hl7.fhir.r5.model.ContactPoint t : src.getTelecom()) 080 tgt.addTelecom(ContactPoint14_50.convertContactPoint(t)); 081 return tgt; 082 } 083 084 public static org.hl7.fhir.r5.model.StructureDefinition.StructureDefinitionMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent src) throws FHIRException { 085 if (src == null || src.isEmpty()) 086 return null; 087 org.hl7.fhir.r5.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r5.model.StructureDefinition.StructureDefinitionMappingComponent(); 088 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyBackboneElement(src,tgt); 089 if (src.hasIdentityElement()) 090 tgt.setIdentityElement(Id14_50.convertId(src.getIdentityElement())); 091 if (src.hasUri()) 092 tgt.setUriElement(Uri14_50.convertUri(src.getUriElement())); 093 if (src.hasName()) 094 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 095 if (src.hasComment()) 096 tgt.setCommentElement(String14_50.convertString(src.getCommentElement())); 097 return tgt; 098 } 099}