
001package org.hl7.fhir.convertors.conv30_40.resources30_40; 002 003import org.hl7.fhir.convertors.context.ConversionContext30_40; 004import org.hl7.fhir.convertors.conv30_40.datatypes30_40.ContactDetail30_40; 005import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.CodeableConcept30_40; 006import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Timing30_40; 007import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.Boolean30_40; 008import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.Code30_40; 009import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.DateTime30_40; 010import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.MarkDown30_40; 011import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.String30_40; 012import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.Uri30_40; 013import org.hl7.fhir.exceptions.FHIRException; 014import org.hl7.fhir.r4.model.CompartmentDefinition; 015import org.hl7.fhir.r4.model.Enumeration; 016 017public class CompartmentDefinition30_40 { 018 019 public static org.hl7.fhir.dstu3.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.r4.model.CompartmentDefinition src) throws FHIRException { 020 if (src == null) 021 return null; 022 org.hl7.fhir.dstu3.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition(); 023 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 024 if (src.hasUrl()) 025 tgt.setUrlElement(Uri30_40.convertUri(src.getUrlElement())); 026 if (src.hasName()) 027 tgt.setNameElement(String30_40.convertString(src.getNameElement())); 028 if (src.hasTitle()) 029 tgt.setTitleElement(String30_40.convertString(src.getTitleElement())); 030 if (src.hasStatus()) 031 tgt.setStatusElement(Enumerations30_40.convertPublicationStatus(src.getStatusElement())); 032 if (src.hasExperimental()) 033 tgt.setExperimentalElement(Boolean30_40.convertBoolean(src.getExperimentalElement())); 034 if (src.hasDateElement()) 035 tgt.setDateElement(DateTime30_40.convertDateTime(src.getDateElement())); 036 if (src.hasPublisher()) 037 tgt.setPublisherElement(String30_40.convertString(src.getPublisherElement())); 038 for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) 039 tgt.addContact(ContactDetail30_40.convertContactDetail(t)); 040 if (src.hasDescription()) 041 tgt.setDescriptionElement(MarkDown30_40.convertMarkdown(src.getDescriptionElement())); 042 if (src.hasPurpose()) 043 tgt.setPurposeElement(MarkDown30_40.convertMarkdown(src.getPurposeElement())); 044 for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) 045 tgt.addUseContext(Timing30_40.convertUsageContext(t)); 046 for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) 047 tgt.addJurisdiction(CodeableConcept30_40.convertCodeableConcept(t)); 048 if (src.hasCode()) 049 tgt.setCodeElement(convertCompartmentType(src.getCodeElement())); 050 if (src.hasSearch()) 051 tgt.setSearchElement(Boolean30_40.convertBoolean(src.getSearchElement())); 052 for (org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) 053 tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); 054 return tgt; 055 } 056 057 public static org.hl7.fhir.r4.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu3.model.CompartmentDefinition src) throws FHIRException { 058 if (src == null) 059 return null; 060 org.hl7.fhir.r4.model.CompartmentDefinition tgt = new org.hl7.fhir.r4.model.CompartmentDefinition(); 061 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 062 if (src.hasUrl()) 063 tgt.setUrlElement(Uri30_40.convertUri(src.getUrlElement())); 064 if (src.hasName()) 065 tgt.setNameElement(String30_40.convertString(src.getNameElement())); 066 if (src.hasTitle()) 067 tgt.setTitleElement(String30_40.convertString(src.getTitleElement())); 068 if (src.hasStatus()) 069 tgt.setStatusElement(Enumerations30_40.convertPublicationStatus(src.getStatusElement())); 070 if (src.hasExperimental()) 071 tgt.setExperimentalElement(Boolean30_40.convertBoolean(src.getExperimentalElement())); 072 if (src.hasDateElement()) 073 tgt.setDateElement(DateTime30_40.convertDateTime(src.getDateElement())); 074 if (src.hasPublisher()) 075 tgt.setPublisherElement(String30_40.convertString(src.getPublisherElement())); 076 for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) 077 tgt.addContact(ContactDetail30_40.convertContactDetail(t)); 078 if (src.hasDescription()) 079 tgt.setDescriptionElement(MarkDown30_40.convertMarkdown(src.getDescriptionElement())); 080 if (src.hasPurpose()) 081 tgt.setPurposeElement(MarkDown30_40.convertMarkdown(src.getPurposeElement())); 082 for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) 083 tgt.addUseContext(Timing30_40.convertUsageContext(t)); 084 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) 085 tgt.addJurisdiction(CodeableConcept30_40.convertCodeableConcept(t)); 086 if (src.hasCode()) 087 tgt.setCodeElement(convertCompartmentType(src.getCodeElement())); 088 if (src.hasSearch()) 089 tgt.setSearchElement(Boolean30_40.convertBoolean(src.getSearchElement())); 090 for (org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) 091 tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); 092 return tgt; 093 } 094 095 public static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { 096 if (src == null) 097 return null; 098 org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); 099 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 100 if (src.hasCode()) 101 tgt.setCodeElement(Code30_40.convertCode(src.getCodeElement())); 102 for (org.hl7.fhir.dstu3.model.StringType t : src.getParam()) tgt.addParam(t.getValue()); 103 if (src.hasDocumentation()) 104 tgt.setDocumentationElement(String30_40.convertString(src.getDocumentationElement())); 105 return tgt; 106 } 107 108 public static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { 109 if (src == null) 110 return null; 111 org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); 112 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 113 if (src.hasCode()) 114 tgt.setCodeElement(Code30_40.convertCode(src.getCodeElement())); 115 for (org.hl7.fhir.r4.model.StringType t : src.getParam()) tgt.addParam(t.getValue()); 116 if (src.hasDocumentation()) 117 tgt.setDocumentationElement(String30_40.convertString(src.getDocumentationElement())); 118 return tgt; 119 } 120 121 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType> convertCompartmentType(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType> src) throws FHIRException { 122 if (src == null || src.isEmpty()) 123 return null; 124 Enumeration<CompartmentDefinition.CompartmentType> tgt = new Enumeration<>(new CompartmentDefinition.CompartmentTypeEnumFactory()); 125 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 126 if (src.getValue() == null) { 127 tgt.setValue(null); 128 } else { 129 switch (src.getValue()) { 130 case PATIENT: 131 tgt.setValue(CompartmentDefinition.CompartmentType.PATIENT); 132 break; 133 case ENCOUNTER: 134 tgt.setValue(CompartmentDefinition.CompartmentType.ENCOUNTER); 135 break; 136 case RELATEDPERSON: 137 tgt.setValue(CompartmentDefinition.CompartmentType.RELATEDPERSON); 138 break; 139 case PRACTITIONER: 140 tgt.setValue(CompartmentDefinition.CompartmentType.PRACTITIONER); 141 break; 142 case DEVICE: 143 tgt.setValue(CompartmentDefinition.CompartmentType.DEVICE); 144 break; 145 default: 146 tgt.setValue(CompartmentDefinition.CompartmentType.NULL); 147 break; 148 } 149 } 150 return tgt; 151 } 152 153 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType> convertCompartmentType(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType> src) throws FHIRException { 154 if (src == null || src.isEmpty()) 155 return null; 156 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentTypeEnumFactory()); 157 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 158 if (src.getValue() == null) { 159 tgt.setValue(null); 160 } else { 161 switch (src.getValue()) { 162 case PATIENT: 163 tgt.setValue(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PATIENT); 164 break; 165 case ENCOUNTER: 166 tgt.setValue(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.ENCOUNTER); 167 break; 168 case RELATEDPERSON: 169 tgt.setValue(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.RELATEDPERSON); 170 break; 171 case PRACTITIONER: 172 tgt.setValue(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PRACTITIONER); 173 break; 174 case DEVICE: 175 tgt.setValue(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.DEVICE); 176 break; 177 default: 178 tgt.setValue(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.NULL); 179 break; 180 } 181 } 182 return tgt; 183 } 184}