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