
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.complextypes14_50.ContactPoint14_50; 005import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.Boolean14_50; 006import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.Code14_50; 007import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.DateTime14_50; 008import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.String14_50; 009import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.Uri14_50; 010import org.hl7.fhir.dstu2016may.model.CompartmentDefinition; 011import org.hl7.fhir.exceptions.FHIRException; 012import org.hl7.fhir.r5.model.Enumeration; 013import org.hl7.fhir.r5.model.Enumerations; 014 015public class CompartmentDefinition14_50 { 016 017 public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.r5.model.CompartmentDefinition src) throws FHIRException { 018 if (src == null || src.isEmpty()) 019 return null; 020 org.hl7.fhir.dstu2016may.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition(); 021 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyDomainResource(src, tgt); 022 if (src.hasUrlElement()) 023 tgt.setUrlElement(Uri14_50.convertUri(src.getUrlElement())); 024 if (src.hasNameElement()) 025 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 026 if (src.hasStatus()) 027 tgt.setStatusElement(Enumerations14_50.convertConformanceResourceStatus(src.getStatusElement())); 028 if (src.hasExperimental()) 029 tgt.setExperimentalElement(Boolean14_50.convertBoolean(src.getExperimentalElement())); 030 if (src.hasPublisher()) 031 tgt.setPublisherElement(String14_50.convertString(src.getPublisherElement())); 032 for (org.hl7.fhir.r5.model.ContactDetail t : src.getContact()) 033 tgt.addContact(convertCompartmentDefinitionContactComponent(t)); 034 if (src.hasDate()) 035 tgt.setDateElement(DateTime14_50.convertDateTime(src.getDateElement())); 036 if (src.hasDescription()) 037 tgt.setDescription(src.getDescription()); 038 if (src.hasPurpose()) 039 tgt.setRequirements(src.getPurpose()); 040 if (src.hasCode()) 041 tgt.setCodeElement(convertCompartmentType(src.getCodeElement())); 042 if (src.hasSearchElement()) 043 tgt.setSearchElement(Boolean14_50.convertBoolean(src.getSearchElement())); 044 for (org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) 045 tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); 046 return tgt; 047 } 048 049 public static org.hl7.fhir.r5.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu2016may.model.CompartmentDefinition src) throws FHIRException { 050 if (src == null || src.isEmpty()) 051 return null; 052 org.hl7.fhir.r5.model.CompartmentDefinition tgt = new org.hl7.fhir.r5.model.CompartmentDefinition(); 053 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyDomainResource(src, tgt); 054 if (src.hasUrlElement()) 055 tgt.setUrlElement(Uri14_50.convertUri(src.getUrlElement())); 056 if (src.hasNameElement()) 057 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 058 if (src.hasStatus()) 059 tgt.setStatusElement(Enumerations14_50.convertConformanceResourceStatus(src.getStatusElement())); 060 if (src.hasExperimental()) 061 tgt.setExperimentalElement(Boolean14_50.convertBoolean(src.getExperimentalElement())); 062 if (src.hasPublisher()) 063 tgt.setPublisherElement(String14_50.convertString(src.getPublisherElement())); 064 for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent t : src.getContact()) 065 tgt.addContact(convertCompartmentDefinitionContactComponent(t)); 066 if (src.hasDate()) 067 tgt.setDateElement(DateTime14_50.convertDateTime(src.getDateElement())); 068 if (src.hasDescription()) 069 tgt.setDescription(src.getDescription()); 070 if (src.hasRequirements()) 071 tgt.setPurpose(src.getRequirements()); 072 if (src.hasCode()) 073 tgt.setCodeElement(convertCompartmentType(src.getCodeElement())); 074 if (src.hasSearchElement()) 075 tgt.setSearchElement(Boolean14_50.convertBoolean(src.getSearchElement())); 076 for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) 077 tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); 078 return tgt; 079 } 080 081 public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent convertCompartmentDefinitionContactComponent(org.hl7.fhir.r5.model.ContactDetail src) throws FHIRException { 082 if (src == null || src.isEmpty()) 083 return null; 084 org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent(); 085 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 086 if (src.hasName()) 087 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 088 for (org.hl7.fhir.r5.model.ContactPoint t : src.getTelecom()) 089 tgt.addTelecom(ContactPoint14_50.convertContactPoint(t)); 090 return tgt; 091 } 092 093 public static org.hl7.fhir.r5.model.ContactDetail convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent src) throws FHIRException { 094 if (src == null || src.isEmpty()) 095 return null; 096 org.hl7.fhir.r5.model.ContactDetail tgt = new org.hl7.fhir.r5.model.ContactDetail(); 097 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 098 if (src.hasName()) 099 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 100 for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) 101 tgt.addTelecom(ContactPoint14_50.convertContactPoint(t)); 102 return tgt; 103 } 104 105 public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { 106 if (src == null || src.isEmpty()) 107 return null; 108 org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); 109 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyBackboneElement(src,tgt); 110 if (src.hasCode()) { 111 if (src.hasCodeElement()) 112 tgt.setCodeElement(Code14_50.convertCode(src.getCodeElement())); 113 } 114 for (org.hl7.fhir.r5.model.StringType t : src.getParam()) tgt.addParam(t.getValue()); 115 if (src.hasDocumentation()) 116 tgt.setDocumentationElement(String14_50.convertString(src.getDocumentationElement())); 117 return tgt; 118 } 119 120 public static org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { 121 if (src == null || src.isEmpty()) 122 return null; 123 org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); 124 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyBackboneElement(src,tgt); 125 if (src.hasCodeElement()) 126 tgt.setCodeElement(Code14_50.convertCode(src.getCodeElement())); 127 for (org.hl7.fhir.dstu2016may.model.StringType t : src.getParam()) tgt.addParam(t.getValue()); 128 if (src.hasDocumentation()) 129 tgt.setDocumentationElement(String14_50.convertString(src.getDocumentationElement())); 130 return tgt; 131 } 132 133 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompartmentType> convertCompartmentType(org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType> src) throws FHIRException { 134 if (src == null || src.isEmpty()) 135 return null; 136 Enumeration<Enumerations.CompartmentType> tgt = new Enumeration<>(new Enumerations.CompartmentTypeEnumFactory()); 137 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 138 if (src.getValue() == null) { 139 tgt.setValue(null); 140 } else { 141 switch (src.getValue()) { 142 case PATIENT: 143 tgt.setValue(Enumerations.CompartmentType.PATIENT); 144 break; 145 case ENCOUNTER: 146 tgt.setValue(Enumerations.CompartmentType.ENCOUNTER); 147 break; 148 case RELATEDPERSON: 149 tgt.setValue(Enumerations.CompartmentType.RELATEDPERSON); 150 break; 151 case PRACTITIONER: 152 tgt.setValue(Enumerations.CompartmentType.PRACTITIONER); 153 break; 154 case DEVICE: 155 tgt.setValue(Enumerations.CompartmentType.DEVICE); 156 break; 157 default: 158 tgt.setValue(Enumerations.CompartmentType.NULL); 159 break; 160 } 161 } 162 return tgt; 163 } 164 165 static public org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType> convertCompartmentType(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompartmentType> src) throws FHIRException { 166 if (src == null || src.isEmpty()) 167 return null; 168 org.hl7.fhir.dstu2016may.model.Enumeration<CompartmentDefinition.CompartmentType> tgt = new org.hl7.fhir.dstu2016may.model.Enumeration<>(new CompartmentDefinition.CompartmentTypeEnumFactory()); 169 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 170 if (src.getValue() == null) { 171 tgt.setValue(null); 172 } else { 173 switch (src.getValue()) { 174 case PATIENT: 175 tgt.setValue(CompartmentDefinition.CompartmentType.PATIENT); 176 break; 177 case ENCOUNTER: 178 tgt.setValue(CompartmentDefinition.CompartmentType.ENCOUNTER); 179 break; 180 case RELATEDPERSON: 181 tgt.setValue(CompartmentDefinition.CompartmentType.RELATEDPERSON); 182 break; 183 case PRACTITIONER: 184 tgt.setValue(CompartmentDefinition.CompartmentType.PRACTITIONER); 185 break; 186 case DEVICE: 187 tgt.setValue(CompartmentDefinition.CompartmentType.DEVICE); 188 break; 189 default: 190 tgt.setValue(CompartmentDefinition.CompartmentType.NULL); 191 break; 192 } 193 } 194 return tgt; 195 } 196}