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